Browse Source

finish login page

sunlight
zhaohe 11 months ago
parent
commit
01dd2f30a7
  1. 4
      .settings/language.settings.xml
  2. 2
      stm32basic
  3. 2
      uappbase/appcfg/appcfg.hpp
  4. 39
      uappbase/service/config_service_utils.cpp
  5. 2
      uappbase/service/config_service_utils.hpp
  6. 47
      usrc/service/page/Page_login.cpp

4
.settings/language.settings.xml

@ -5,7 +5,7 @@
<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>
<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-1198437934552552923" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="1729409962368012780" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<language-scope id="org.eclipse.cdt.core.gcc"/>
<language-scope id="org.eclipse.cdt.core.g++"/>
</provider>
@ -16,7 +16,7 @@
<provider copy-of="extension" id="org.eclipse.cdt.ui.UserLanguageSettingsProvider"/>
<provider-reference id="org.eclipse.cdt.core.ReferencedProjectsLanguageSettingsProvider" ref="shared-provider"/>
<provider-reference id="org.eclipse.cdt.managedbuilder.core.MBSLanguageSettingsProvider" ref="shared-provider"/>
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="-1182943701957397996" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<provider class="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" console="false" env-hash="1744904194963167707" id="com.st.stm32cube.ide.mcu.toolchain.armnone.setup.CrossBuiltinSpecsDetector" keep-relative-paths="false" name="MCU ARM GCC Built-in Compiler Settings" parameter="${COMMAND} ${FLAGS} -E -P -v -dD &quot;${INPUTS}&quot;" prefer-non-shared="true">
<language-scope id="org.eclipse.cdt.core.gcc"/>
<language-scope id="org.eclipse.cdt.core.g++"/>
</provider>

2
stm32basic

@ -1 +1 @@
Subproject commit b2fbccdc9ddd701095912425f8f6f3eaaa47166a
Subproject commit ea11d9f77beed2bf8145bbe490283c0830fa8a77

2
uappbase/appcfg/appcfg.hpp

@ -1,7 +1,7 @@
#pragma once
#include "project_configs.h"
#define MAX_USR_NAME_SIZE 5
#define MAX_USR_NAME_SIZE 10
#define MOTO_POWER_EN_IO PC2
#define MOTO1_CSN_IO PB3

39
uappbase/service/config_service_utils.cpp

@ -34,4 +34,41 @@ void setMotorULToTruns(int motorid, int32_t val) {
ZASSERT(0);
}
}
}
const char* getPasswd(const char* usrname, CfgItermCache* cache) {
static CfgItermCache cfgcache;
memset(cache, 0, sizeof(CfgItermCache));
if (strcmp(usrname, getCfgStr(kusr_name0)) == 0) {
getCfgStr(kusr_passwd0);
memcpy(cache, &cfgcache, sizeof(CfgItermCache));
return cache->buf;
}
if (strcmp(usrname, getCfgStr(kusr_name1)) == 0) {
getCfgStr(kusr_passwd1);
memcpy(cache, &cfgcache, sizeof(CfgItermCache));
return cache->buf;
}
if (strcmp(usrname, getCfgStr(kusr_name2)) == 0) {
getCfgStr(kusr_passwd2);
memcpy(cache, &cfgcache, sizeof(CfgItermCache));
return cache->buf;
}
if (strcmp(usrname, getCfgStr(kusr_name3)) == 0) {
getCfgStr(kusr_passwd3);
memcpy(cache, &cfgcache, sizeof(CfgItermCache));
return cache->buf;
}
if (strcmp(usrname, getCfgStr(kusr_name4)) == 0) {
getCfgStr(kusr_passwd4);
memcpy(cache, &cfgcache, sizeof(CfgItermCache));
return cache->buf;
}
if (strcmp(usrname, getCfgStr(kusr_name5)) == 0) {
getCfgStr(kusr_passwd5);
memcpy(cache, &cfgcache, sizeof(CfgItermCache));
return cache->buf;
}
return NULL;
}
} // namespace iflytop

2
uappbase/service/config_service_utils.hpp

@ -4,4 +4,6 @@ namespace iflytop {
int32_t getMotorULToTruns(int32_t motorid);
void setMotorULToTruns(int32_t motorid, int32_t val);
const char* getPasswd(const char* usrname, CfgItermCache* cache);
} // namespace iflytop

47
usrc/service/page/Page_login.cpp

@ -63,37 +63,30 @@ void Page_login::OnInputFieldContentChange(uint8_t bid, const char* text) {
}
void Page_login::OnLoginButtonClick(uint8_t bid, const char* userName, const char* passwd) {
static CfgItermCache passwdcfgcache;
//
ZLOGI(TAG, "try login %s %s", userName, passwd);
bool suc = false;
bool isadmin = false;
if (strcmp(userName, getCfgStr(kusr_name0)) == 0 && strcmp(passwd, getCfgStr(kusr_passwd0)) == 0) {
suc = true;
isadmin = true;
} else if (strcmp(userName, getCfgStr(kusr_name1)) == 0 && strcmp(passwd, getCfgStr(kusr_passwd1)) == 0) {
suc = true;
} else if (strcmp(userName, getCfgStr(kusr_name2)) == 0 && strcmp(passwd, getCfgStr(kusr_passwd2)) == 0) {
suc = true;
} else if (strcmp(userName, getCfgStr(kusr_name3)) == 0 && strcmp(passwd, getCfgStr(kusr_passwd3)) == 0) {
suc = true;
} else if (strcmp(userName, getCfgStr(kusr_name4)) == 0 && strcmp(passwd, getCfgStr(kusr_passwd4)) == 0) {
suc = true;
} else if (strcmp(userName, getCfgStr(kusr_name5)) == 0 && strcmp(passwd, getCfgStr(kusr_passwd5)) == 0) {
suc = true;
const char* curUsrPasswd = getPasswd(userName, &passwdcfgcache);
if (!curUsrPasswd) {
UIS->alert("Óû§²»´æÔÚ");
UIS->setVal(PAGE, OBJ(txtPasswd), "");
return;
}
if (suc) {
GSM->setLogin(isadmin, userName);
UIS->chpage(pg_main);
} else {
if (strcmp(curUsrPasswd, passwd) != 0) {
UIS->alert("ÃÜÂë´íÎó");
UIS->setVal(PAGE, OBJ(txtPasswd), "");
return;
}
UIS->setVal(PAGE, OBJ(txtPasswd), "");
}
#if 0
void Page_login::unlogin() {
ZLOGI(TAG, "unlogin");
GSM->setUnLogin();
UIS->chpage(PAGE);
if (strcmp(userName, getCfgStr(kusr_name0)) == 0) {
ZLOGI(TAG, "%s(admin) login success ", userName);
GSM->setLogin(true, userName);
} else {
ZLOGI(TAG, "%s login success ", userName);
GSM->setLogin(false, userName);
}
UIS->chpage(pg_main);
UIS->setVal(PAGE, OBJ(txtPasswd), "");
return;
}
#endif
Loading…
Cancel
Save