|
|
@@ -1,4 +1,4 @@
|
|
|
-#include "../pch/pch.h"
|
|
|
+#include "../pch/pch.h"
|
|
|
#include "CLoginWnd.h"
|
|
|
#include "CUpdateWnd.h"
|
|
|
|
|
|
@@ -7,7 +7,7 @@
|
|
|
void CLoginWnd::Init()
|
|
|
{
|
|
|
CLabelUI* version = static_cast<CLabelUI*>(m_pm.FindControl(_T("login_version")));
|
|
|
- version->SetText((L"智铺子收银软件 " + CLewaimaiString::UTF8ToUnicode(CSystem::GetVersion())).c_str());
|
|
|
+ version->SetText((L"智铺子收银软件 " + CLewaimaiString::UTF8ToUnicode(CSystem::GetVersion())).c_str());
|
|
|
|
|
|
std::map<string, string> users = CSetting::getUsers();
|
|
|
|
|
|
@@ -37,7 +37,7 @@ void CLoginWnd::Init()
|
|
|
|
|
|
if(CSetting::GetParam("setting_is_auto_login") == "1")
|
|
|
{
|
|
|
- //自动登录开启了,记住密码一定要开启
|
|
|
+ //自动登录开启了,记住密码一定要开启
|
|
|
pAuto->Selected(true, false);
|
|
|
pRemember->Selected(true, false);
|
|
|
}
|
|
|
@@ -140,7 +140,7 @@ LRESULT CLoginWnd::OnCreate(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHand
|
|
|
styleValue &= ~WS_CAPTION;
|
|
|
::SetWindowLong(*this, GWL_STYLE, styleValue | WS_CLIPSIBLINGS | WS_CLIPCHILDREN);
|
|
|
|
|
|
- // 把自己的窗口句柄与窗口绘制管理器挂接在一起
|
|
|
+ // 把自己的窗口句柄与窗口绘制管理器挂接在一起
|
|
|
m_pm.Init(m_hWnd);
|
|
|
|
|
|
m_pm.AddPreMessageFilter(this);
|
|
|
@@ -150,10 +150,10 @@ LRESULT CLoginWnd::OnCreate(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHand
|
|
|
CControlUI* pRoot = builder.Create(_T("login.xml"), (UINT)0, NULL, &m_pm);
|
|
|
ASSERT(pRoot && "Failed to parse XML");
|
|
|
|
|
|
- // 把这些控件绘制到本窗口上
|
|
|
+ // 鎶婅繖浜涙帶浠剁粯鍒跺埌鏈�獥鍙d笂
|
|
|
m_pm.AttachDialog(pRoot);
|
|
|
|
|
|
- // 把自己加入到CPaintManagerUI的m_aNotifiers数组中,用于处理Notify函数
|
|
|
+ // 鎶婅嚜宸卞姞鍏ュ埌CPaintManagerUI鐨刴_aNotifiers鏁扮粍涓�紝鐢ㄤ簬澶勭悊Notify鍑芥暟
|
|
|
m_pm.AddNotifier(this);
|
|
|
|
|
|
Init();
|
|
|
@@ -168,7 +168,7 @@ LRESULT CLoginWnd::OnClose(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandl
|
|
|
}
|
|
|
|
|
|
/*
|
|
|
- *这个是窗口被销毁的时候调用的
|
|
|
+ *杩欎釜鏄�獥鍙h�閿€姣佺殑鏃跺€欒皟鐢ㄧ殑
|
|
|
**/
|
|
|
LRESULT CLoginWnd::OnDestroy(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
|
|
|
{
|
|
|
@@ -192,7 +192,7 @@ LRESULT CLoginWnd::OnNcCalcSize(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& b
|
|
|
|
|
|
LRESULT CLoginWnd::OnNcPaint(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
|
|
|
{
|
|
|
- //在这里设置焦点才有用
|
|
|
+ //鍦ㄨ繖閲岃�缃�劍鐐规墠鏈夌敤
|
|
|
CEditUI* pAccountEdit = static_cast<CEditUI*>(m_pm.FindControl(_T("accountedit")));
|
|
|
if(pAccountEdit)
|
|
|
{
|
|
|
@@ -247,111 +247,111 @@ LRESULT CLoginWnd::OnSize(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandle
|
|
|
|
|
|
LRESULT CLoginWnd::HandleMessage(UINT uMsg, WPARAM wParam, LPARAM lParam)
|
|
|
{
|
|
|
- LRESULT lRes = 0;
|
|
|
- BOOL bHandled = TRUE;
|
|
|
- switch(uMsg)
|
|
|
- {
|
|
|
- case WM_CREATE:
|
|
|
- lRes = OnCreate(uMsg, wParam, lParam, bHandled);
|
|
|
- break;
|
|
|
- case WM_CLOSE:
|
|
|
- lRes = OnClose(uMsg, wParam, lParam, bHandled);
|
|
|
- break;
|
|
|
- case WM_DESTROY:
|
|
|
- lRes = OnDestroy(uMsg, wParam, lParam, bHandled);
|
|
|
- break;
|
|
|
- case WM_NCACTIVATE:
|
|
|
- lRes = OnNcActivate(uMsg, wParam, lParam, bHandled);
|
|
|
- break;
|
|
|
- case WM_NCCALCSIZE:
|
|
|
- lRes = OnNcCalcSize(uMsg, wParam, lParam, bHandled);
|
|
|
- break;
|
|
|
- case WM_NCPAINT:
|
|
|
- lRes = OnNcPaint(uMsg, wParam, lParam, bHandled);
|
|
|
- break;
|
|
|
- case WM_NCHITTEST:
|
|
|
- lRes = OnNcHitTest(uMsg, wParam, lParam, bHandled);
|
|
|
- break;
|
|
|
- case WM_SIZE:
|
|
|
- lRes = OnSize(uMsg, wParam, lParam, bHandled);
|
|
|
- break;
|
|
|
- default:
|
|
|
- bHandled = FALSE;
|
|
|
- }
|
|
|
- if(bHandled)
|
|
|
- {
|
|
|
- return lRes;
|
|
|
- }
|
|
|
- if(m_pm.MessageHandler(uMsg, wParam, lParam, lRes))
|
|
|
- {
|
|
|
- return lRes;
|
|
|
- }
|
|
|
- return CWindowWnd::HandleMessage(uMsg, wParam, lParam);
|
|
|
+ LRESULT lRes = 0;
|
|
|
+ BOOL bHandled = TRUE;
|
|
|
+ switch (uMsg)
|
|
|
+ {
|
|
|
+ case WM_CREATE:
|
|
|
+ lRes = OnCreate(uMsg, wParam, lParam, bHandled);
|
|
|
+ break;
|
|
|
+ case WM_CLOSE:
|
|
|
+ lRes = OnClose(uMsg, wParam, lParam, bHandled);
|
|
|
+ break;
|
|
|
+ case WM_DESTROY:
|
|
|
+ lRes = OnDestroy(uMsg, wParam, lParam, bHandled);
|
|
|
+ break;
|
|
|
+ case WM_NCACTIVATE:
|
|
|
+ lRes = OnNcActivate(uMsg, wParam, lParam, bHandled);
|
|
|
+ break;
|
|
|
+ case WM_NCCALCSIZE:
|
|
|
+ lRes = OnNcCalcSize(uMsg, wParam, lParam, bHandled);
|
|
|
+ break;
|
|
|
+ case WM_NCPAINT:
|
|
|
+ lRes = OnNcPaint(uMsg, wParam, lParam, bHandled);
|
|
|
+ break;
|
|
|
+ case WM_NCHITTEST:
|
|
|
+ lRes = OnNcHitTest(uMsg, wParam, lParam, bHandled);
|
|
|
+ break;
|
|
|
+ case WM_SIZE:
|
|
|
+ lRes = OnSize(uMsg, wParam, lParam, bHandled);
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ bHandled = FALSE;
|
|
|
+ }
|
|
|
+ if (bHandled)
|
|
|
+ {
|
|
|
+ return lRes;
|
|
|
+ }
|
|
|
+ if (m_pm.MessageHandler(uMsg, wParam, lParam, lRes))
|
|
|
+ {
|
|
|
+ return lRes;
|
|
|
+ }
|
|
|
+ return CWindowWnd::HandleMessage(uMsg, wParam, lParam);
|
|
|
}
|
|
|
|
|
|
LRESULT CLoginWnd::MessageHandler(UINT uMsg, WPARAM wParam, LPARAM lParam, bool& bHandled)
|
|
|
{
|
|
|
- if(uMsg == WM_KEYDOWN)
|
|
|
- {
|
|
|
- if(wParam == VK_RETURN)
|
|
|
- {
|
|
|
- CEditUI* pEdit = static_cast<CEditUI*>(m_pm.FindControl(_T("accountedit")));
|
|
|
- if(pEdit->GetText().IsEmpty())
|
|
|
- {
|
|
|
- pEdit->SetFocus();
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- pEdit = static_cast<CEditUI*>(m_pm.FindControl(_T("pwdedit")));
|
|
|
- if(pEdit->GetText().IsEmpty())
|
|
|
- {
|
|
|
- pEdit->SetFocus();
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- this->HandleLogin();
|
|
|
- }
|
|
|
- }
|
|
|
- return true;
|
|
|
- }
|
|
|
- else if(wParam == VK_ESCAPE)
|
|
|
- {
|
|
|
- PostQuitMessage(0);
|
|
|
- return true;
|
|
|
- }
|
|
|
-
|
|
|
- }
|
|
|
- else if(uMsg == WM_LOGIN_SUCCESS)
|
|
|
- {
|
|
|
- LoginSuccess();
|
|
|
- return true;
|
|
|
- }
|
|
|
- else if(uMsg == WM_LOGIN_ERROR)
|
|
|
- {
|
|
|
- LoginError();
|
|
|
- return true;
|
|
|
- }
|
|
|
- else if(uMsg == WM_NEED_UPDATE)
|
|
|
- {
|
|
|
- //说明需要升级了
|
|
|
-
|
|
|
- Update();
|
|
|
-
|
|
|
- return true;
|
|
|
- }
|
|
|
- else if(uMsg == WM_LOGIN_AGAIN_OUT)
|
|
|
- {
|
|
|
- ShowLoginAgainOut();
|
|
|
-
|
|
|
- return true;
|
|
|
- }
|
|
|
-
|
|
|
- return false;
|
|
|
+ if (uMsg == WM_KEYDOWN)
|
|
|
+ {
|
|
|
+ if (wParam == VK_RETURN)
|
|
|
+ {
|
|
|
+ CEditUI* pEdit = static_cast<CEditUI*>(m_pm.FindControl(_T("accountedit")));
|
|
|
+ if (pEdit->GetText().IsEmpty())
|
|
|
+ {
|
|
|
+ pEdit->SetFocus();
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ pEdit = static_cast<CEditUI*>(m_pm.FindControl(_T("pwdedit")));
|
|
|
+ if (pEdit->GetText().IsEmpty())
|
|
|
+ {
|
|
|
+ pEdit->SetFocus();
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ this->HandleLogin();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ else if (wParam == VK_ESCAPE)
|
|
|
+ {
|
|
|
+ PostQuitMessage(0);
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ else if (uMsg == WM_LOGIN_SUCCESS)
|
|
|
+ {
|
|
|
+ LoginSuccess();
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ else if (uMsg == WM_LOGIN_ERROR)
|
|
|
+ {
|
|
|
+ LoginError();
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ else if (uMsg == WM_NEED_UPDATE)
|
|
|
+ {
|
|
|
+ //璇存槑闇€瑕佸崌绾т簡
|
|
|
+
|
|
|
+ Update();
|
|
|
+
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ else if (uMsg == WM_LOGIN_AGAIN_OUT)
|
|
|
+ {
|
|
|
+ ShowLoginAgainOut();
|
|
|
+
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+
|
|
|
+ return false;
|
|
|
}
|
|
|
|
|
|
void CLoginWnd::StartLogin()
|
|
|
{
|
|
|
- //隐藏密码输入框,显示进度条
|
|
|
+ //隐藏密码输入框,显示进度条
|
|
|
CVerticalLayoutUI* pInput = static_cast<CVerticalLayoutUI*>(m_pm.FindControl(_T("login_input")));
|
|
|
pInput->SetVisible(false);
|
|
|
|
|
|
@@ -361,124 +361,186 @@ void CLoginWnd::StartLogin()
|
|
|
CLabelUI* pLoginResultLabel = static_cast<CLabelUI*>(m_pm.FindControl(_T("loginresult")));
|
|
|
pLoginResultLabel->SetVisible(false);
|
|
|
|
|
|
- //开启一个线程,开始处理登录
|
|
|
+ //开启一个线程,开始处理登录
|
|
|
std::thread(&CLoginWnd::HandleLogin, this).detach();
|
|
|
}
|
|
|
|
|
|
void CLoginWnd::HandleLogin()
|
|
|
{
|
|
|
- ////真正登录前,先检测是否有需要更新
|
|
|
- //CSystem::my_sleep(1);
|
|
|
+ CLabelUI* pLoginResultLabel = static_cast<CLabelUI*>(m_pm.FindControl(_T("loginresult")));
|
|
|
|
|
|
- ////如果需要更新,那么就提示
|
|
|
- //PostMessage(WM_NEED_UPDATE);
|
|
|
- //return;
|
|
|
+ //真正登录前,先检测是否有需要更新
|
|
|
+ //std::map<string, string> params;
|
|
|
|
|
|
- //判断账号密码是否正确
|
|
|
- std::wstring account, password;
|
|
|
- CEditUI* pAccountEdit = static_cast<CEditUI*>(m_pm.FindControl(_T("accountedit")));
|
|
|
- if(pAccountEdit)
|
|
|
- {
|
|
|
- account = pAccountEdit->GetText().GetData();
|
|
|
- }
|
|
|
+ //std::string response;
|
|
|
+ //bool ret = CZhipuziHttpClient::Request("/version/getwindowsversion", params, response);
|
|
|
+ //if (!ret)
|
|
|
+ //{
|
|
|
+ // pLoginResultLabel->SetText(std::wstring(_T("缃戠粶璇锋眰鍑洪敊")).c_str());
|
|
|
+ // pLoginResultLabel->SetVisible(true);
|
|
|
|
|
|
- CEditUI* pPasswordEdit = static_cast<CEditUI*>(m_pm.FindControl(_T("pwdedit")));
|
|
|
- if(pPasswordEdit)
|
|
|
- {
|
|
|
- password = pPasswordEdit->GetText().GetData();
|
|
|
- }
|
|
|
+ // PostMessage(WM_LOGIN_ERROR);
|
|
|
|
|
|
- LOG_INFO("account:" << account.c_str() << ", password:" << password.c_str());
|
|
|
+ // return;
|
|
|
+ //}
|
|
|
|
|
|
- string s_account = CLewaimaiString::UnicodeToUTF8(account);
|
|
|
- string s_password = CLewaimaiString::UnicodeToUTF8(password);
|
|
|
+ //rapidjson::Document document;
|
|
|
+ //document.Parse(response.c_str());
|
|
|
|
|
|
- CLewaimaiString::trim(s_account);
|
|
|
- CLewaimaiString::trim(s_password);
|
|
|
+ //if (document.HasParseError())
|
|
|
+ //{
|
|
|
+ // pLoginResultLabel->SetText(std::wstring(_T("服务器返回数据格式错误")).c_str());
|
|
|
+ // pLoginResultLabel->SetVisible(true);
|
|
|
|
|
|
- CLabelUI* pLoginResultLabel = static_cast<CLabelUI*>(m_pm.FindControl(_T("loginresult")));
|
|
|
- if(s_account.compare("") == 0)
|
|
|
- {
|
|
|
- pLoginResultLabel->SetText(std::wstring(_T("用户名不能为空")).c_str());
|
|
|
- pLoginResultLabel->SetVisible(true);
|
|
|
+ // PostMessage(WM_LOGIN_ERROR);
|
|
|
|
|
|
- PostMessage(WM_LOGIN_ERROR);
|
|
|
+ // return;
|
|
|
+ //}
|
|
|
+ //else
|
|
|
+ //{
|
|
|
+ // if (!document.HasMember("errcode") || !document.HasMember("errmsg") || !document.HasMember("data"))
|
|
|
+ // {
|
|
|
+ // pLoginResultLabel->SetText(std::wstring(_T("服务器返回数据格式错误")).c_str());
|
|
|
+ // pLoginResultLabel->SetVisible(true);
|
|
|
|
|
|
- return;
|
|
|
- }
|
|
|
+ // PostMessage(WM_LOGIN_ERROR);
|
|
|
|
|
|
- if(s_password.compare("") == 0)
|
|
|
- {
|
|
|
- pLoginResultLabel->SetText(std::wstring(_T("密码不能为空")).c_str());
|
|
|
- pLoginResultLabel->SetVisible(true);
|
|
|
+ // return;
|
|
|
+ // }
|
|
|
+
|
|
|
+ // rapidjson::Value& v_errcode = document["errcode"];
|
|
|
+ // int errcode = v_errcode.GetInt();
|
|
|
+ // if (errcode != 0)
|
|
|
+ // {
|
|
|
+ // std::string errmsg = "response failed! message:" + string(document["errmsg"].GetString());
|
|
|
+ // pLoginResultLabel->SetText(CLewaimaiString::UTF8ToUnicode(errmsg).c_str());
|
|
|
+ // pLoginResultLabel->SetVisible(true);
|
|
|
+
|
|
|
+ // PostMessage(WM_LOGIN_ERROR);
|
|
|
+
|
|
|
+ // return;
|
|
|
+ // }
|
|
|
+
|
|
|
+ // rapidjson::Value& data = document["data"];
|
|
|
+
|
|
|
+ // std::string newest_version = data["newest_version"].GetString();
|
|
|
+ // m_update_url = data["url"].GetString();
|
|
|
+
|
|
|
+ // if (newest_version > CSystem::GetVersion())
|
|
|
+ // {
|
|
|
+ // //璇存槑鏈夋柊鐗堟湰锛岃�鏇存柊
|
|
|
+ // PostMessage(WM_NEED_UPDATE);
|
|
|
+ // return;
|
|
|
+ // }
|
|
|
+ //}
|
|
|
+
|
|
|
+ //鍒ゆ柇璐﹀彿瀵嗙爜鏄�惁姝g‘
|
|
|
+ std::wstring account, password;
|
|
|
+ CEditUI* pAccountEdit = static_cast<CEditUI*>(m_pm.FindControl(_T("accountedit")));
|
|
|
+ if (pAccountEdit)
|
|
|
+ {
|
|
|
+ account = pAccountEdit->GetText().GetData();
|
|
|
+ }
|
|
|
+
|
|
|
+ CEditUI* pPasswordEdit = static_cast<CEditUI*>(m_pm.FindControl(_T("pwdedit")));
|
|
|
+ if (pPasswordEdit)
|
|
|
+ {
|
|
|
+ password = pPasswordEdit->GetText().GetData();
|
|
|
+ }
|
|
|
+
|
|
|
+ //鎶婄�1涓�腑鏂囧啋鍙锋浛鎹㈡垚鑻辨枃鍐掑彿
|
|
|
+ CLewaimaiString::Replace(account, _T(":"), _T(":"), 1);
|
|
|
+
|
|
|
+ //LOG_INFO("account:" << account.c_str() << ", password:" << password.c_str());
|
|
|
+
|
|
|
+ string s_account = CLewaimaiString::UnicodeToUTF8(account);
|
|
|
+ string s_password = CLewaimaiString::UnicodeToUTF8(password);
|
|
|
+
|
|
|
+ CLewaimaiString::trim(s_account);
|
|
|
+ CLewaimaiString::trim(s_password);
|
|
|
+
|
|
|
+ if (s_account.compare("") == 0)
|
|
|
+ {
|
|
|
+ pLoginResultLabel->SetText(std::wstring(_T("用户名不能为空")).c_str());
|
|
|
+ pLoginResultLabel->SetVisible(true);
|
|
|
+
|
|
|
+ PostMessage(WM_LOGIN_ERROR);
|
|
|
+
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (s_password.compare("") == 0)
|
|
|
+ {
|
|
|
+ pLoginResultLabel->SetText(std::wstring(_T("瀵嗙爜涓嶈兘涓虹┖")).c_str());
|
|
|
+ pLoginResultLabel->SetVisible(true);
|
|
|
+
|
|
|
+ PostMessage(WM_LOGIN_ERROR);
|
|
|
+
|
|
|
+ return;
|
|
|
+ }
|
|
|
|
|
|
- PostMessage(WM_LOGIN_ERROR);
|
|
|
+ CZhipuziHttpClient::Init(s_account, s_password);
|
|
|
+
|
|
|
+ std::string errmsg;
|
|
|
+ bool res = CZhipuziHttpClient::Login(errmsg);
|
|
|
+
|
|
|
+ if (res)
|
|
|
+ {
|
|
|
+ CCheckBoxUI* pAuto = static_cast<CCheckBoxUI*>(m_pm.FindControl(_T("login_auto_login")));
|
|
|
+ CCheckBoxUI* pRemember = static_cast<CCheckBoxUI*>(m_pm.FindControl(_T("login_remember_password")));
|
|
|
+
|
|
|
+ if (pAuto->IsSelected())
|
|
|
+ {
|
|
|
+ CSetting::SetParam("setting_is_auto_login", "1", false);
|
|
|
+ CSetting::SetParam("setting_is_remember_password", "1", false);
|
|
|
+
|
|
|
+ //相当于开启自动登录,默认就是开启了记住密码了
|
|
|
+ CSetting::SetUser(s_account, s_password, true);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ CSetting::SetParam("setting_is_auto_login", "0", false);
|
|
|
+
|
|
|
+ if (pRemember->IsSelected())
|
|
|
+ {
|
|
|
+ CSetting::SetParam("setting_is_remember_password", "1", false);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ CSetting::SetParam("setting_is_remember_password", "0", false);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ if (pRemember->IsSelected())
|
|
|
+ {
|
|
|
+ CSetting::SetUser(s_account, s_password, true);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ CSetting::SetUser(s_account, "", true);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ //鍦ㄨ繖閲岃�缃�畬鍙傛暟鍚庯紝缁熶竴淇濆瓨鍒版暟鎹�簱
|
|
|
+ CSetting::SetParam("last_login_username", s_account, true);
|
|
|
+
|
|
|
+ //把用户名和密码保存起来
|
|
|
+ CSetting::SetLoginInfo(s_account, s_password);
|
|
|
+
|
|
|
+ PostMessage(WM_LOGIN_SUCCESS);
|
|
|
+
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ //登录失败了
|
|
|
+ CLabelUI* pLoginResultLabel = static_cast<CLabelUI*>(m_pm.FindControl(_T("loginresult")));
|
|
|
+
|
|
|
+ pLoginResultLabel->SetText(std::wstring(_T("登录失败:") + CLewaimaiString::UTF8ToUnicode(errmsg)).c_str());
|
|
|
+ pLoginResultLabel->SetVisible(true);
|
|
|
|
|
|
- return;
|
|
|
- }
|
|
|
-
|
|
|
- CZhipuziHttpClient::Init(s_account, s_password);
|
|
|
-
|
|
|
- std::string errmsg;
|
|
|
- bool res = CZhipuziHttpClient::Login(errmsg);
|
|
|
-
|
|
|
- if(res)
|
|
|
- {
|
|
|
- CCheckBoxUI* pAuto = static_cast<CCheckBoxUI*>(m_pm.FindControl(_T("login_auto_login")));
|
|
|
- CCheckBoxUI* pRemember = static_cast<CCheckBoxUI*>(m_pm.FindControl(_T("login_remember_password")));
|
|
|
-
|
|
|
- if(pAuto->IsSelected())
|
|
|
- {
|
|
|
- CSetting::SetParam("setting_is_auto_login", "1", false);
|
|
|
- CSetting::SetParam("setting_is_remember_password", "1", false);
|
|
|
-
|
|
|
- //相当于开启自动登录,默认就是开启了记住密码了
|
|
|
- CSetting::SetUser(s_account, s_password, true);
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- CSetting::SetParam("setting_is_auto_login", "0", false);
|
|
|
-
|
|
|
- if(pRemember->IsSelected())
|
|
|
- {
|
|
|
- CSetting::SetParam("setting_is_remember_password", "1", false);
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- CSetting::SetParam("setting_is_remember_password", "0", false);
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- if(pRemember->IsSelected())
|
|
|
- {
|
|
|
- CSetting::SetUser(s_account, s_password, true);
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- CSetting::SetUser(s_account, "", true);
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- //在这里设置完参数后,统一保存到数据库
|
|
|
- CSetting::SetParam("last_login_username", s_account, true);
|
|
|
-
|
|
|
- //把用户名和密码保存起来
|
|
|
- CSetting::SetLoginInfo(s_account, s_password);
|
|
|
-
|
|
|
- PostMessage(WM_LOGIN_SUCCESS);
|
|
|
-
|
|
|
- return;
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- //登录失败了
|
|
|
- CLabelUI* pLoginResultLabel = static_cast<CLabelUI*>(m_pm.FindControl(_T("loginresult")));
|
|
|
-
|
|
|
- pLoginResultLabel->SetText(std::wstring(_T("登录失败:") + CLewaimaiString::UTF8ToUnicode(errmsg)).c_str());
|
|
|
- pLoginResultLabel->SetVisible(true);
|
|
|
-
|
|
|
- PostMessage(WM_LOGIN_ERROR);
|
|
|
- }
|
|
|
+ PostMessage(WM_LOGIN_ERROR);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
void CLoginWnd::LoginSuccess()
|
|
|
@@ -490,7 +552,7 @@ void CLoginWnd::LoginSuccess()
|
|
|
}
|
|
|
|
|
|
pFrame->SetIcon(IDI_ICON_DUILIB);
|
|
|
- pFrame->Create(NULL, _T("智铺子收银软件"), UI_WNDSTYLE_FRAME, 0L, 0, 0, 1024, 768);
|
|
|
+ pFrame->Create(NULL, _T("智铺子收银软件"), UI_WNDSTYLE_FRAME, 0L, 0, 0, 1024, 768);
|
|
|
pFrame->CenterWindow();
|
|
|
|
|
|
::ShowWindow(*pFrame, SW_SHOWMAXIMIZED);
|
|
|
@@ -512,31 +574,31 @@ void CLoginWnd::LoginError()
|
|
|
|
|
|
void CLoginWnd::Update()
|
|
|
{
|
|
|
- CUpdateWnd* pFrame = new CUpdateWnd();
|
|
|
- if(pFrame == NULL)
|
|
|
- {
|
|
|
- return;
|
|
|
- }
|
|
|
+ CUpdateWnd* pFrame = new CUpdateWnd();
|
|
|
+ if (pFrame == NULL)
|
|
|
+ {
|
|
|
+ return;
|
|
|
+ }
|
|
|
|
|
|
- TCHAR lpTempPathBuffer[MAX_PATH];
|
|
|
- DWORD dwRetVal = GetTempPath(MAX_PATH, lpTempPathBuffer);
|
|
|
+ TCHAR lpTempPathBuffer[MAX_PATH];
|
|
|
+ DWORD dwRetVal = GetTempPath(MAX_PATH, lpTempPathBuffer);
|
|
|
|
|
|
- std::string url = "http://down10d.zol.com.cn/zoldownload_os/nsis3.04setup@81_262627.exe";
|
|
|
- std::string filename = CLewaimaiString::UnicodeToANSI(lpTempPathBuffer);
|
|
|
- pFrame->InitData(url, filename);
|
|
|
+ std::string url = m_update_url;
|
|
|
+ std::string filename = CLewaimaiString::UnicodeToANSI(lpTempPathBuffer);
|
|
|
+ pFrame->InitData(url, filename);
|
|
|
|
|
|
- pFrame->SetIcon(IDI_ICON_DUILIB);
|
|
|
- pFrame->Create(NULL, _T("自动更新"), UI_WNDSTYLE_DIALOG, 0, 0, 0, 0, 0, NULL);
|
|
|
- pFrame->CenterWindow();
|
|
|
+ pFrame->SetIcon(IDI_ICON_DUILIB);
|
|
|
+ pFrame->Create(NULL, _T("鑷�姩鏇存柊"), UI_WNDSTYLE_DIALOG, 0, 0, 0, 0, 0, NULL);
|
|
|
+ pFrame->CenterWindow();
|
|
|
|
|
|
- ::ShowWindow(*pFrame, SW_SHOWNORMAL);
|
|
|
+ ::ShowWindow(*pFrame, SW_SHOWNORMAL);
|
|
|
|
|
|
- Close();
|
|
|
+ Close();
|
|
|
}
|
|
|
|
|
|
void CLoginWnd::ShowLoginAgainOut()
|
|
|
{
|
|
|
- //这种模式是本人强制挤下线了
|
|
|
+ //这种模式是本人强制挤下线了
|
|
|
CMessageboxWnd* pMessagebox = new CMessageboxWnd;
|
|
|
pMessagebox->Create(m_hWnd, _T(""), UI_WNDSTYLE_DIALOG, WS_EX_WINDOWEDGE);
|
|
|
pMessagebox->SetIcon(IDI_ICON_DUILIB);
|