mirror of
https://github.com/oopuuu/zTC1.git
synced 2025-12-12 13:08:13 +08:00
merge
This commit is contained in:
@@ -120,7 +120,11 @@ static int HttpGetAssets(httpd_request_t *req)
|
||||
OSStatus err = kNoErr;
|
||||
|
||||
char* file_name = strstr(req->filename, "/assets/");
|
||||
if (!file_name) return err;
|
||||
if (!file_name)
|
||||
{
|
||||
http_log("HttpGetAssets url[%s] err", req->filename);
|
||||
return err;
|
||||
}
|
||||
http_log("HttpGetAssets url[%s] file_name[%s]", req->filename, file_name);
|
||||
|
||||
int total_sz = 0;
|
||||
@@ -351,17 +355,23 @@ exit:
|
||||
|
||||
static int HttpDelTask(httpd_request_t *req)
|
||||
{
|
||||
//TODO 从url获取时间
|
||||
char* time_str = strstr(req->filename, "?time=");
|
||||
OSStatus err = kNoErr;
|
||||
|
||||
char* time_str = strstr(req->filename, "/task/");
|
||||
if (!time_str)
|
||||
{
|
||||
http_log("HttpDelTask url[%s] err", req->filename);
|
||||
return err;
|
||||
}
|
||||
http_log("HttpDelTask url[%s] time_str[%s][%s]", req->filename, time_str, time_str + 6);
|
||||
|
||||
int time1;
|
||||
sscanf(time_str + 6, "%d", &time1);
|
||||
//int time1;
|
||||
//sscanf(time_str + 6, "%d", &time1);
|
||||
|
||||
char* mess = DelTask(time1) ? "OK" : "NO";
|
||||
//char* mess = DelTask(time1) ? "OK" : "NO";
|
||||
|
||||
OSStatus err = kNoErr;
|
||||
send_http(mess, strlen(mess), exit, &err);
|
||||
//OSStatus err = kNoErr;
|
||||
//send_http(mess, strlen(mess), exit, &err);
|
||||
exit:
|
||||
return err;
|
||||
}
|
||||
@@ -402,7 +412,7 @@ const struct httpd_wsgi_call g_app_handlers[] = {
|
||||
{ "/wifi/scan", HTTPD_HDR_DEFORT, 0, HttpGetWifiScan, HttpSetWifiScan, NULL, NULL },
|
||||
{ "/mqtt/config", HTTPD_HDR_DEFORT, 0, NULL, HttpSetMqttConfig, NULL, NULL },
|
||||
{ "/log", HTTPD_HDR_DEFORT, 0, HttpGetLog, NULL, NULL, NULL },
|
||||
{ "/task", HTTPD_HDR_DEFORT, 0, HttpGetTasks, HttpAddTask, NULL, HttpDelTask },
|
||||
{ "/task", HTTPD_HDR_DEFORT, APP_HTTP_FLAGS_NO_EXACT_MATCH, HttpGetTasks, HttpAddTask, NULL, HttpDelTask },
|
||||
{ "/ota", HTTPD_HDR_DEFORT, 0, Otastatus, OtaStart, NULL, NULL },
|
||||
};
|
||||
|
||||
|
||||
@@ -194,7 +194,7 @@
|
||||
</form>
|
||||
</div>
|
||||
<div class="mdl-card__actions mdl-card--border">
|
||||
<a id="demo-show-toast" class="mdl-button mdl-button--colored mdl-js-button mdl-js-ripple-effect">
|
||||
<a href="javascript:ShowToask('Config Success')" class="mdl-button mdl-button--colored mdl-js-button mdl-js-ripple-effect">
|
||||
Submit
|
||||
</a>
|
||||
</div>
|
||||
@@ -224,24 +224,30 @@
|
||||
</div>
|
||||
|
||||
<div class="page page3 mdl-cell mdl-cell--12-col demo-card-event mdl-card mdl-shadow--2dp">
|
||||
<table class="mdl-data-table mdl-js-data-table">
|
||||
<table id="timed_task_tb" class="mdl-data-table mdl-js-data-table">
|
||||
<tr>
|
||||
<th>Index</th>
|
||||
<th>Time</th>
|
||||
<th>Socket</th>
|
||||
<th>On</th>
|
||||
<th>Option</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>1</td>
|
||||
<td>2020-02-15<br>07:11:08</td>
|
||||
<td>02-15 07:11:08</td>
|
||||
<td>1</td>
|
||||
<td>0</td>
|
||||
<td><a>Delete</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>2020-02-15<br>07:11:08</td>
|
||||
<td>1</td>
|
||||
<td>0</td>
|
||||
<td><a>Delete</a></td>
|
||||
</tr>
|
||||
<!--
|
||||
<tr>
|
||||
<td colspan="5">No Timed Task</td>
|
||||
</tr>
|
||||
-->
|
||||
</table>
|
||||
</div>
|
||||
|
||||
@@ -328,20 +334,15 @@
|
||||
|
||||
<script type="text/javascript" src="assets/js_pack.js"></script>
|
||||
<script>
|
||||
//弹框
|
||||
(function() {
|
||||
'use strict';
|
||||
window['counter'] = 0;
|
||||
var snackbarContainer = document.querySelector('#demo-toast-example');
|
||||
var showToastButton = document.querySelector('#demo-show-toast');
|
||||
showToastButton.addEventListener('click', function() {
|
||||
'use strict';
|
||||
var data = {message: 'Config Success # ' + ++counter};
|
||||
//弹框-start
|
||||
var snackbarContainer = document.querySelector('#demo-toast-example');
|
||||
function ShowToask(mess) {
|
||||
var data = {message: mess};
|
||||
snackbarContainer.MaterialSnackbar.showSnackbar(data);
|
||||
});
|
||||
}());
|
||||
}
|
||||
//弹框-end
|
||||
|
||||
//Ajax
|
||||
//Ajax-start
|
||||
function AjaxErr(re) {
|
||||
//alert(re.status);
|
||||
}
|
||||
@@ -350,7 +351,9 @@ function Ajax(url, onsuccess, type, data) {
|
||||
url: url,
|
||||
type: type,
|
||||
data: data,
|
||||
success: onsuccess,
|
||||
success: function(re) {
|
||||
onsuccess(re.replace(/'/g, '"'));
|
||||
},
|
||||
error: AjaxErr
|
||||
});
|
||||
}
|
||||
@@ -363,7 +366,9 @@ function HttpPost(url, onsuccess, data) {
|
||||
function HttpDel(url, onsuccess, data) {
|
||||
Ajax(url, onsuccess, "DELET", data);
|
||||
}
|
||||
//Ajax-end
|
||||
|
||||
//Menu-start
|
||||
var chart_par = document.getElementById("ct-chart-par");
|
||||
chart_par.scrollTo(chart_par.scrollWidth, 0);
|
||||
|
||||
@@ -392,7 +397,8 @@ function ShowPage(id) {
|
||||
window.clearTimeout(rescan_timer);
|
||||
}
|
||||
}
|
||||
ShowPage(6);
|
||||
ShowPage(3);
|
||||
//Menu-end
|
||||
|
||||
$("#wifi_sel_name").on("change", function() {
|
||||
if (input_wifi_sel_data.value == "0") {
|
||||
@@ -435,6 +441,9 @@ var data = {
|
||||
[]
|
||||
]
|
||||
};
|
||||
|
||||
//图表-start
|
||||
var data = { series: [ [] ] };
|
||||
var t = new Chartist.Line('.ct-chart', data, {showArea: true, axisY: {position: 'end'}});
|
||||
var power_idx = 0;
|
||||
var chart_wth = 0;
|
||||
@@ -461,7 +470,65 @@ function GetPowerRecord() {
|
||||
$(document).ready(function(){
|
||||
GetPowerRecord();
|
||||
})
|
||||
//图表-end
|
||||
|
||||
//定时任务-start
|
||||
function GetTimedTask() {
|
||||
HttpGet("/task", function (re) {
|
||||
var tb_html = "\
|
||||
<tr>\
|
||||
<th>Time</th>\
|
||||
<th>Socket</th>\
|
||||
<th>On</th>\
|
||||
<th>Option</th>\
|
||||
</tr>";
|
||||
console.log(re);
|
||||
var tasks = JSON.parse(re);
|
||||
if (tasks.length == 0) {
|
||||
tb_html += "<tr><td colspan='4'>No Timed Task</td></tr>";
|
||||
}
|
||||
for (var i = 0; i < tasks.length; i++) {
|
||||
tb_html += "\
|
||||
<tr>\
|
||||
<td>" + tasks[i].prs_time + "</td>\
|
||||
<td>" + tasks[i].socket_idx + "</td>\
|
||||
<td>" + tasks[i].on + "</td>\
|
||||
<td><a href='javascript:DelTimedTask(" + tasks[i].timestamp + ");'>Delete</a></td>\
|
||||
</tr>";
|
||||
}
|
||||
document.getElementById("timed_task_tb").innerHTML = tb_html;
|
||||
});
|
||||
}
|
||||
GetTimedTask();
|
||||
|
||||
function AddTimedTask() {
|
||||
var tim = document.getElementById("task_time").value;
|
||||
var idx = document.getElementById("task_skt_idx").value;
|
||||
var on = document.getElementById("task_on").value;
|
||||
|
||||
if (tim == null || tim == "" || tim.length < 10) {
|
||||
alert("task time invalid!");
|
||||
return;
|
||||
}
|
||||
var prs_time = Math.round(new Date(tim) / 1000);
|
||||
//prs_time = prs_time + parseInt(sec);
|
||||
var cmd = prs_time + " " + idx + " " + on;
|
||||
if (cmd.length >= 16) {
|
||||
alert("CMD ERROR!");
|
||||
}
|
||||
HttpPost("/task", function (re) {
|
||||
GetTimedTask();
|
||||
}, cmd);
|
||||
}
|
||||
function DelTimedTask(timestamp) {
|
||||
HttpDel("/task/"+timestamp, function (re) {
|
||||
ShowToask("Delete timed task OK!");
|
||||
GetTimedTask();
|
||||
}, timestamp);
|
||||
}
|
||||
//定时任务-end
|
||||
|
||||
//日志-start
|
||||
var sys_log = document.getElementById("sys_log");
|
||||
var log_div = document.getElementsByClassName("sys-log")[0];
|
||||
function GetSysLog() {
|
||||
@@ -471,6 +538,7 @@ function GetSysLog() {
|
||||
});
|
||||
}
|
||||
GetSysLog();
|
||||
//日志-end
|
||||
|
||||
</script>
|
||||
</body>
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -93,7 +93,7 @@ bool DelTask(int time)
|
||||
|
||||
char* GetTaskStr()
|
||||
{
|
||||
char* str = (char*)malloc(sizeof(char)*(task_count*60+2));
|
||||
char* str = (char*)malloc(sizeof(char)*(task_count*80+2));
|
||||
pTimedTask tmp_tsk = task_top;
|
||||
char* tmp_str = str;
|
||||
tmp_str[0] = '[';
|
||||
@@ -105,10 +105,10 @@ char* GetTaskStr()
|
||||
struct tm* tm_info;
|
||||
time_t prs_time = tmp_tsk->prs_time + 28800;
|
||||
tm_info = localtime(&prs_time);
|
||||
strftime(buffer, 26, "%Y-%m-%d %H:%M:%S", tm_info);
|
||||
strftime(buffer, 26, "%m-%d %H:%M:%S", tm_info);
|
||||
|
||||
sprintf(tmp_str, "{'prs_time':'%s','socket_idx':%d,'on':%d},",
|
||||
buffer, tmp_tsk->socket_idx, tmp_tsk->on);
|
||||
sprintf(tmp_str, "{'timestamp':%d,'prs_time':'%s','socket_idx':%d,'on':%d},",
|
||||
tmp_tsk->prs_time, buffer, tmp_tsk->socket_idx, tmp_tsk->on);
|
||||
tmp_str += strlen(tmp_str);
|
||||
tmp_tsk = tmp_tsk->next;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user