diff --git a/src/web/module/maestro_section_record.html b/src/web/module/maestro_section_record.html index 88c77ac..a279431 100644 --- a/src/web/module/maestro_section_record.html +++ b/src/web/module/maestro_section_record.html @@ -17,17 +17,19 @@ $(document).ready(function() { function initDatePicker() { - $('#start_datepicker').datepicker({ - format: 'yyyy-mm-dd', - autoclose: true, - language: 'kr' - }); + $('#start_datepicker') + .datepicker({ + format: 'yyyy-mm-dd', + autoclose: true, + language: 'kr' + }); - $('#end_datepicker').datepicker({ - format: 'yyyy-mm-dd', - autoclose: true, - language: 'kr' - }); + $('#end_datepicker') + .datepicker({ + format: 'yyyy-mm-dd', + autoclose: true, + language: 'kr' + }); var today = new Date(); var yyyy = today.getFullYear(); @@ -38,6 +40,54 @@ function initDatePicker() { $('#end_datepicker').datepicker('update', yyyy + "-" + mm + "-" + dd); } +function setDatePickers1Week() { + var today = new Date(); + var tyyyy = today.getFullYear(); + var tmm = String(today.getMonth() + 1).padStart(2, '0'); //January is 0! + var tdd = String(today.getDate()).padStart(2, '0'); + + var startDay = new Date(); + startDay.setDate(startDay.getDate() - 7); + var syyyy = startDay.getFullYear(); + var smm = String(startDay.getMonth() + 1).padStart(2, '0'); //January is 0! + var sdd = String(startDay.getDate()).padStart(2, '0'); + + $('#start_datepicker').datepicker('update', syyyy + "-" + smm + "-" + sdd); + $('#end_datepicker').datepicker('update', tyyyy + "-" + tmm + "-" + tdd); +} + +function setDatePickers1Month() { + var today = new Date(); + var tyyyy = today.getFullYear(); + var tmm = String(today.getMonth() + 1).padStart(2, '0'); //January is 0! + var tdd = String(today.getDate()).padStart(2, '0'); + + var startDay = new Date(); + startDay.setMonth(startDay.getMonth() - 1); + var syyyy = startDay.getFullYear(); + var smm = String(startDay.getMonth() + 1).padStart(2, '0'); //January is 0! + var sdd = String(startDay.getDate()).padStart(2, '0'); + + $('#start_datepicker').datepicker('update', syyyy + "-" + smm + "-" + sdd); + $('#end_datepicker').datepicker('update', tyyyy + "-" + tmm + "-" + tdd); +} + +function setDatePickers1Year() { + var today = new Date(); + var tyyyy = today.getFullYear(); + var tmm = String(today.getMonth() + 1).padStart(2, '0'); //January is 0! + var tdd = String(today.getDate()).padStart(2, '0'); + + var startDay = new Date(); + startDay.setFullYear(startDay.getFullYear() - 1); + var syyyy = startDay.getFullYear(); + var smm = String(startDay.getMonth() + 1).padStart(2, '0'); //January is 0! + var sdd = String(startDay.getDate()).padStart(2, '0'); + + $('#start_datepicker').datepicker('update', syyyy + "-" + smm + "-" + sdd); + $('#end_datepicker').datepicker('update', tyyyy + "-" + tmm + "-" + tdd); +} + function copyToClipboard() { @@ -157,16 +207,16 @@ function makeMouseAppSubjectList(appList) { if(appData.koreanName == "") continue; - addSubjectListItem("#mouse_app_subject_list", appData.appID, appData.koreanName); + addSubjectListItem("#mouse_app_subject_list", appData.appID, appData.koreanName); } } function addSubjectListItem(subjectListID, appID, appName) { $(subjectListID).append('\
\ - \ - \ + \ + \
\ '); } @@ -174,13 +224,45 @@ function addSubjectListItem(subjectListID, appID, appName) { function addSubjectBundleItem(subjectListID, appID, appName) { $(subjectListID).append('\
\ - \ - \ + \ + \
\ '); } + +function requestPlayerRecordList() { + var startDate = $("#start_date").val(); + var endDate = $("#end_date").val(); + // console.log(startDate); + // console.log(endDate); + + var playerNameList = $("#player_name").val(); + // console.log(playerNameList); + + var appID = $(":radio[name='subject_group']:checked").val(); + if(typeof(appID) == "undefined") + appID = 0; + // console.log(appID); + + sendRequestServer( //url, sendParams, onSuccess, onFail, isDebugMode); + "./../server/record/request_player_record_list.php", + "MaestroID=" + maestroID + "&StartDate=" + startDate + "&EndDate=" + endDate + + "&PlayerNameList=" + playerNameList + "&AppID=" + appID, + + (function(jsonData) { + console.log(jsonData); + }), + + (function(errorMessage, errorCode) { + showErrorMessage(errorMessage, "error"); + }) + + ); +} + + @@ -208,8 +290,8 @@ function addSubjectBundleItem(subjectListID, appID, appName) {
- - + +
+ +
+ + + +
+ +
@@ -242,7 +332,7 @@ function addSubjectBundleItem(subjectListID, appID, appName) { ?
- +
@@ -256,55 +346,31 @@ function addSubjectBundleItem(subjectListID, appID, appName) {
-
-
- - -
-
- - -
-
- - -
+
-
-
- - -
-
- - -
-
- - -
+
-
+
-
+

- - + +
diff --git a/src/web/server/record/request_player_record_list.php b/src/web/server/record/request_player_record_list.php new file mode 100644 index 0000000..abf6b81 --- /dev/null +++ b/src/web/server/record/request_player_record_list.php @@ -0,0 +1,136 @@ +close(); + exit; +} + +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"; + + case 1001: // english practice + $subject_statement = $subject_statement." 10 < A.AppID AND A.AppID < 19"; + + case 1002: // korean test + $subject_statement = $subject_statement." 20 < A.AppID AND A.AppID < 31"; + + case 1003: // english test + $subject_statement = $subject_statement." 30 < A.AppID AND A.AppID < 41"; + } + } + + $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($player_name_list.length > 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 get_player_record_list($maestro_id, $date_statement, $player_name_statement, $subject_statement) { + global $db_conn; + + $where_statement = $date_statement; + if(strlen($where_statement) > 0 and strlen($player_name_statement) > 0) + $where_statement = $where_statement." AND "; + $where_statement = $where_statement.$player_name_statement; + 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"; + + + $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; + "; + + // 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