Kaynağa Gözat

Merge branch 'master' of https://tree.clementinecomputing.com/clementinecomputing/popufare

clementinecomputing 6 yıl önce
ebeveyn
işleme
acc04bf051

+ 24 - 1
busunit/DIUv2/diu_main.c

@@ -1088,7 +1088,6 @@ static void ui_handle_interfaceinfo(struct mg_connection *nc, struct http_messag
 //
 static void ui_handle_say(struct mg_connection *nc, struct http_message *hm) {
   int ret;
-  //char msg_fail[] = "fail say";
   char msg_ok[] = "ok say";
 
   char s_message[_SLEN];
@@ -1104,6 +1103,26 @@ static void ui_handle_say(struct mg_connection *nc, struct http_message *hm) {
       (unsigned long)strlen(msg_ok), msg_ok);
 }
 
+// change equipment number
+//
+static void ui_handle_eqnum(struct mg_connection *nc, struct http_message *hm) {
+  int ret;
+  char msg_ok[] = "ok eqnum";
+  char s_eqnum[_SLEN];
+
+  ret = mg_get_http_var(&(hm->body), "eqnum", s_eqnum, _SLEN);
+  if (ret<=0) { mg_http_send_error(nc, 404, NULL); return; }
+
+  ret = set_equip_num(atoi(s_eqnum));
+  if (ret < 0) {
+    mg_http_send_error(nc, 404, NULL);
+    return;
+  }
+
+  mg_printf(nc, "HTTP/1.1 200 OK\r\nContent-Length: %lu\r\n\r\n%s",
+      (unsigned long)strlen(msg_ok), msg_ok);
+}
+
 
 //-----
 //-----
@@ -1170,6 +1189,10 @@ static void api_handle_req(struct mg_connection *nc, struct http_message *hm) {
     ui_handle_say(nc, hm);
   }
 
+  else if (strncmp(s_action, "eqnum", strlen("eqnum")+1)==0) {
+    ui_handle_eqnum(nc, hm);
+  }
+
   else {
     mg_http_send_error(nc, 404, NULL);
   }

+ 68 - 4
busunit/DIUv2/html/index-ORG.html

@@ -82,9 +82,9 @@
 
       <div class='pure-g row4'>
 
-        <div class='pure-u-1-6 col'> <button onmousedown='_beep();' class='bdropinp bkeym' id='ui_configuration_back'>Back</button> </div>
-        <div class='pure-u-2-3 col'> <button class='bdisp' style='font-size:7vh;'>Configuration</button> </div>
-        <div class='pure-u-1-6 col'>  </div>
+        <div class='pure-u-1-3 col'> <button onmousedown='_beep();' class='bdropinp bkeym' id='ui_configuration_back'>Back</button> </div>
+        <div class='pure-u-1-3 col'> <button class='bdisp' style='font-size:7vh;'>Configuration</button> </div>
+        <div class='pure-u-1-3 col'> <button onmousedown='_beep();' class='bdropinp bkeym' id='ui_configuration_eqnum'>Eq. Num</button> </div>
 
       </div>
 
@@ -125,9 +125,73 @@
       </div>
 
 
-
     </div>
 
+    <!-- ********************************* -->
+    <!-- ******                    ******* -->
+    <!-- ******  Equipment Number  ******* -->
+    <!-- ******                    ******* -->
+    <!-- ********************************* -->
+
+
+    <div id='ui_eqnum' style='display:none;'>
+
+      <br>
+
+      <div class='pure-g row4'>
+
+        <div class='pure-u-1-6 col'> <button onmousedown='_beep();' class='bdropinp bkey ltyellow' id='ui_eqnum_1'>1</button> </div>
+        <div class='pure-u-1-6 col'> <button onmousedown='_beep();' class='bdropinp bkey ltyellow' id='ui_eqnum_2'>2</button> </div>
+        <div class='pure-u-1-6 col'> <button onmousedown='_beep();' class='bdropinp bkey ltyellow' id='ui_eqnum_3'>3</button> </div>
+
+        <div class='pure-u-1-6 col'>
+          <p><button onmousedown='_beep();' class='bdisp' id='ui_eqnum_eqnum_text' style='display:block;'>Eq. Num</button></p>
+        </div>
+
+        <div class='pure-u-1-6 col'> 
+          <button class="bdropinp bkeyw" id='ui_eqnum_eqnum' style='display:block;'></button>
+        </div>
+
+
+      </div>
+
+      <br>
+
+      <div class='pure-g row4'>
+        <div class='pure-u-1-6 col'> <button onmousedown='_beep();' class='bdropinp bkey ltyellow' id='ui_eqnum_4'>4</button> </div>
+        <div class='pure-u-1-6 col'> <button onmousedown='_beep();' class='bdropinp bkey ltyellow' id='ui_eqnum_5'>5</button> </div>
+        <div class='pure-u-1-6 col'> <button onmousedown='_beep();' class='bdropinp bkey ltyellow' id='ui_eqnum_6'>6</button> </div>
+      </div>
+
+      <br>
+
+      <div class='pure-g row4'>
+
+        <div class='pure-u-1-6 col'> <button onmousedown='_beep();' class='bdropinp bkey ltyellow' id='ui_eqnum_7'>7</button> </div>
+        <div class='pure-u-1-6 col'> <button onmousedown='_beep();' class='bdropinp bkey ltyellow' id='ui_eqnum_8'>8</button> </div>
+        <div class='pure-u-1-6 col'> <button onmousedown='_beep();' class='bdropinp bkey ltyellow' id='ui_eqnum_9'>9</button> </div>
+
+        <div class='pure-u-1-6 col'> </div>
+        <div class='pure-u-1-6 col'> <button onmousedown='_beep();' class='bdropinp bkeyw' id='ui_eqnum_ok'>Ok</button> </div>
+
+      </div>
+
+      <br>
+
+      <div class='pure-g row4'>
+
+        <div class='pure-u-1-6 col'> <button onmousedown='_beep();' class='bdropinp bkey ltyellow' id='ui_eqnum_clr'>Clr</button> </div>
+        <div class='pure-u-1-6 col'> <button onmousedown='_beep();' class='bdropinp bkey ltyellow' id='ui_eqnum_0'>0</button> </div>
+        <div class='pure-u-1-6 col'> <button onmousedown='_beep();' class='bdropinp bkey ltyellow' id='ui_eqnum_bksp'>Bksp</button> </div>
+
+        <div class='pure-u-1-6 col'> </div>
+        <div class='pure-u-1-6 col'> <button onmousedown='_beep();' class='bdropinp bkeyw' id='ui_eqnum_cancel'>Cancel</button> </div>
+
+      </div>
+
+    </div> <!-- ui_eqnum -->
+ 
+
     <!-- ************************** -->
     <!-- ******             ******* -->
     <!-- ****** Diagnostics ******* -->

+ 54 - 3
busunit/DIUv2/html/js/diu_ui-ORG.js

@@ -27,7 +27,7 @@ var _fqADDRESS = _ADDRESS + ":" + _PORT;
 var BG_COLOR = "#f7f7f7";
 var TEXT_COLOR = "#444444";
 
-var DIU_UI_VERSION = "0.1.7";
+var DIU_UI_VERSION = "0.1.8";
 var DIU_UI_VERSION_DATE = "2019-12-10";
 
 var g_snd = {
@@ -64,6 +64,9 @@ var g_ctx = {
   "driver" : "",
   "pin" : "",
   "paddle" : "",
+  "eqnum" : "",
+
+  "cur_eqnum" : "",
 
   "current_ui" : "ui_login",
 
@@ -616,6 +619,10 @@ function _cb_status(inp) {
     g_ctx.diu_status[kv[0].trim()] = kv[1].trim();
   }
 
+  if ("equipno" in g_ctx.diu_status) {
+    g_ctx.cur_eqnum = g_ctx.diu_status["equipno"];
+  }
+
   var m = g_ctx.diu_status;
   if (g_ctx.current_ui === "ui_login") {
 
@@ -986,6 +993,20 @@ function _configuration() {
   _clear_ui_paddle();
 }
 
+function _eqnum() {
+  _switch_ui('ui_eqnum');
+  g_ctx.driver_login_state = "driver";
+
+  if (g_ctx.cur_eqnum.length > 0) {
+    var ele = document.getElementById("ui_eqnum_eqnum");
+    ele.innerHTML = g_ctx.cur_eqnum;
+    g_ctx.eqnum = g_ctx.cur_eqnum;
+  }
+
+  _clear_ui_driver();
+  _clear_ui_paddle();
+}
+
 function _reset() {
   _switch_ui('ui_login');
   g_ctx.driver_login_state = "driver";
@@ -1039,6 +1060,30 @@ function _custom5() {
 
 //------------
 
+function _set_eqnum() {
+  if (g_ctx.eqnum.length == 0) { return; }
+  _api_request("eqnum", {"eqnum":g_ctx.eqnum}, function(inp) { console.log("eqnum ok:", inp); }, function(inp) { console.log("eqnum error:", inp); });
+}
+
+function _eqnum_input(inp) {
+  var n = g_ctx.eqnum.length;
+
+  if (inp == 'cancel')    { _switch_ui('ui_login'); }
+  else if (inp == 'ok')   {
+    _set_eqnum();
+    _switch_ui('ui_login');
+    return;
+  }
+  else if (inp == 'bksp') { g_ctx.eqnum = g_ctx.eqnum.substr(0, n-1); }
+  else if (inp == 'clr')  { g_ctx.eqnum = ""; }
+  else                    { g_ctx.eqnum  += inp; }
+
+  // Otherwise update the displayed equipment number
+  //
+  var ele = document.getElementById('ui_eqnum_eqnum');
+  ele.innerHTML = g_ctx.eqnum;
+}
+
 
 //-------------
 
@@ -1064,6 +1109,12 @@ function init() {
   //
   document.getElementById('ui_configuration_back').onclick = _mainscreen;
   document.getElementById('ui_configuration_volumetest').onclick = _volume_test;
+  document.getElementById('ui_configuration_eqnum').onclick = _eqnum;
+
+  // equipment number change
+  //
+  document.getElementById('ui_eqnum_cancel').onclick = _mainscreen;
+  document.getElementById('ui_eqnum_ok').onclick = function() { console.log("eqnum change"); }
 
 
   // login
@@ -1238,8 +1289,8 @@ function init() {
   }
 
 
-  var ui_page = [ "driver", "paddle", "bulkaccept" ];
-  var ui_func = [ _driver_login, _paddle_input, _bulkaccept_input ];
+  var ui_page = [ "driver", "paddle", "bulkaccept", "eqnum" ];
+  var ui_func = [ _driver_login, _paddle_input, _bulkaccept_input, _eqnum_input ];
 
   for (var idx=0; idx<ui_page.length; idx++) {