zhangyang пре 5 година
родитељ
комит
d68f5c1950

+ 27 - 2
bin/Win32/Debug/zhipuzi_pay_plugin/skin/kuaijiejian_setting.xml

@@ -3,8 +3,33 @@
 	<Font id="0" name="微软雅黑" size="16" />
 	<VerticalLayout vscrollbar="true">
 		<HorizontalLayout height="48" padding="20,30,0,0">
-			<Label text="抓取金额结算:" font="0" width="120" padding="30,0,0,0"/>
-			<Button name="kuaijiejian_setting_jiesuan_btn" width="150" height="34" padding="0,5,0,5" normalimage="file='Chat_InputBox_BG.png' corner='4,4,4,4'" hotimage="file='Chat_InputBox_BG_Hover.png' corner='4,4,4,4'" />
+			<Label text="收款:" font="0" width="120" padding="30,0,0,0"/>
+			<Button name="kuaijiejian_setting_shoukuan_btn" width="150" height="34" padding="0,5,0,5" normalimage="file='Chat_InputBox_BG.png' corner='4,4,4,4'" hotimage="file='Chat_InputBox_BG_Hover.png' corner='4,4,4,4'" />
+		</HorizontalLayout>
+		
+		<HorizontalLayout height="48" padding="20,20,0,0">
+			<Label text="退款:" font="0" width="120" padding="30,0,0,0"/>
+			<Button name="kuaijiejian_setting_tuikuan_btn" width="150" height="34" padding="0,5,0,5" normalimage="file='Chat_InputBox_BG.png' corner='4,4,4,4'" hotimage="file='Chat_InputBox_BG_Hover.png' corner='4,4,4,4'" />
+		</HorizontalLayout>
+		
+		<HorizontalLayout height="48" padding="20,20,0,0">
+			<Label text="交易记录:" font="0" width="120" padding="30,0,0,0"/>
+			<Button name="kuaijiejian_setting_jiaoyijilu_btn" width="150" height="34" padding="0,5,0,5" normalimage="file='Chat_InputBox_BG.png' corner='4,4,4,4'" hotimage="file='Chat_InputBox_BG_Hover.png' corner='4,4,4,4'" />
+		</HorizontalLayout>
+		
+		<HorizontalLayout height="48" padding="20,20,0,0">
+			<Label text="交易汇总:" font="0" width="120" padding="30,0,0,0"/>
+			<Button name="kuaijiejian_setting_jiaoyihuizong_btn" width="150" height="34" padding="0,5,0,5" normalimage="file='Chat_InputBox_BG.png' corner='4,4,4,4'" hotimage="file='Chat_InputBox_BG_Hover.png' corner='4,4,4,4'" />
+		</HorizontalLayout>
+		
+		<HorizontalLayout height="48" padding="20,20,0,0">
+			<Label text="交班:" font="0" width="120" padding="30,0,0,0"/>
+			<Button name="kuaijiejian_setting_jiaoban_btn" width="150" height="34" padding="0,5,0,5" normalimage="file='Chat_InputBox_BG.png' corner='4,4,4,4'" hotimage="file='Chat_InputBox_BG_Hover.png' corner='4,4,4,4'" />
+		</HorizontalLayout>
+		
+		<HorizontalLayout height="48" padding="20,20,0,0">
+			<Label text="设置:" font="0" width="120" padding="30,0,0,0"/>
+			<Button name="kuaijiejian_setting_shezhi_btn" width="150" height="34" padding="0,5,0,5" normalimage="file='Chat_InputBox_BG.png' corner='4,4,4,4'" hotimage="file='Chat_InputBox_BG_Hover.png' corner='4,4,4,4'" />
 		</HorizontalLayout>
 	</VerticalLayout>
 </Window>

+ 5 - 0
zhipuzi_pay_plugin/helper/define.h

@@ -30,5 +30,10 @@
 
 //热键的定义
 #define WM_MYHOTKEY_SHOUKUAN 12224
+#define WM_MYHOTKEY_TUIKUAN 12225
+#define WM_MYHOTKEY_JIAOYIJILU 12226
+#define WM_MYHOTKEY_JIAOYIHUIZONG 12227
+#define WM_MYHOTKEY_JIAOBAN 12228
+#define WM_MYHOTKEY_SHEZHI 12229
 
 

+ 65 - 0
zhipuzi_pay_plugin/tool/CSetting.cpp

@@ -151,6 +151,71 @@ void CSetting::Init()
 		m_paramsMap[system_setting_kuaijiejian_shoukuan_vk] = "68";
 	}
 
+	//快捷键相关的设置(退款默认CTRL+R)
+	std::string system_setting_kuaijiejian_tuikuan_mod = "system_setting_kuaijiejian_tuikuan_mod";
+	if (m_paramsMap.find(system_setting_kuaijiejian_tuikuan_mod) == m_paramsMap.end())
+	{
+		m_paramsMap[system_setting_kuaijiejian_tuikuan_mod] = "2";
+	}
+
+	std::string system_setting_kuaijiejian_tuikuan_vk = "system_setting_kuaijiejian_tuikuan_vk";
+	if (m_paramsMap.find(system_setting_kuaijiejian_tuikuan_vk) == m_paramsMap.end())
+	{
+		m_paramsMap[system_setting_kuaijiejian_tuikuan_vk] = "82";
+	}
+
+	//快捷键相关的设置(交易记录默认CTRL+Z)
+	std::string system_setting_kuaijiejian_jiaoyijilu_mod = "system_setting_kuaijiejian_jiaoyijilu_mod";
+	if (m_paramsMap.find(system_setting_kuaijiejian_jiaoyijilu_mod) == m_paramsMap.end())
+	{
+		m_paramsMap[system_setting_kuaijiejian_jiaoyijilu_mod] = "2";
+	}
+
+	std::string system_setting_kuaijiejian_jiaoyijilu_vk = "system_setting_kuaijiejian_jiaoyijilu_vk";
+	if (m_paramsMap.find(system_setting_kuaijiejian_jiaoyijilu_vk) == m_paramsMap.end())
+	{
+		m_paramsMap[system_setting_kuaijiejian_jiaoyijilu_vk] = "90";
+	}
+
+	//快捷键相关的设置(交易汇总默认CTRL+X)
+	std::string system_setting_kuaijiejian_jiaoyihuizong_mod = "system_setting_kuaijiejian_jiaoyihuizong_mod";
+	if (m_paramsMap.find(system_setting_kuaijiejian_jiaoyihuizong_mod) == m_paramsMap.end())
+	{
+		m_paramsMap[system_setting_kuaijiejian_jiaoyihuizong_mod] = "2";
+	}
+
+	std::string system_setting_kuaijiejian_jiaoyihuizong_vk = "system_setting_kuaijiejian_jiaoyihuizong_vk";
+	if (m_paramsMap.find(system_setting_kuaijiejian_jiaoyihuizong_vk) == m_paramsMap.end())
+	{
+		m_paramsMap[system_setting_kuaijiejian_jiaoyihuizong_vk] = "88";
+	}
+
+	//快捷键相关的设置(交班默认CTRL+W)
+	std::string system_setting_kuaijiejian_jiaoban_mod = "system_setting_kuaijiejian_jiaoban_mod";
+	if (m_paramsMap.find(system_setting_kuaijiejian_jiaoban_mod) == m_paramsMap.end())
+	{
+		m_paramsMap[system_setting_kuaijiejian_jiaoban_mod] = "2";
+	}
+
+	std::string system_setting_kuaijiejian_jiaoban_vk = "system_setting_kuaijiejian_jiaoban_vk";
+	if (m_paramsMap.find(system_setting_kuaijiejian_jiaoban_vk) == m_paramsMap.end())
+	{
+		m_paramsMap[system_setting_kuaijiejian_jiaoban_vk] = "87";
+	}
+
+	//快捷键相关的设置(设置默认CTRL+Q)
+	std::string system_setting_kuaijiejian_shezhi_mod = "system_setting_kuaijiejian_shezhi_mod";
+	if (m_paramsMap.find(system_setting_kuaijiejian_shezhi_mod) == m_paramsMap.end())
+	{
+		m_paramsMap[system_setting_kuaijiejian_shezhi_mod] = "2";
+	}
+
+	std::string system_setting_kuaijiejian_shezhi_vk = "system_setting_kuaijiejian_shezhi_vk";
+	if (m_paramsMap.find(system_setting_kuaijiejian_shezhi_vk) == m_paramsMap.end())
+	{
+		m_paramsMap[system_setting_kuaijiejian_shezhi_vk] = "81";
+	}
+
 	/*打印机相关的设置*/
 	//打印类型
 	std::string system_setting_dayinji_setting_type = "system_setting_dayinji_setting_type";

+ 376 - 183
zhipuzi_pay_plugin/wnd/CSystemSettingWnd.cpp

@@ -335,77 +335,92 @@ void CSystemSettingWnd::Init()
     CEditUI* ip_edit = static_cast<CEditUI*>(m_pm.FindControl(_T("dayinji_setting_wangkou_ip")));
     ip_edit->SetText(CLewaimaiString::UTF8ToUnicode(system_setting_dayinji_wangkou_ip).c_str());
 
-	//开始收款设置
-	CCheckBoxUI* kaijiqidong = static_cast<CCheckBoxUI*>(m_pm.FindControl(L"shoukuan_setting_kaijiqidong"));
-	if (CSystem::IsAutoStart())
-	{
-		kaijiqidong->SetCheck(true);
-	}
-	else
-	{
-		kaijiqidong->SetCheck(false);
-	}
-
-	std::string shoukuan_setting_fubiao = CSetting::GetParam("shoukuan_setting_fubiao");
-	CCheckBoxUI* fubiao = static_cast<CCheckBoxUI*>(m_pm.FindControl(L"shoukuan_setting_fubiao"));
-	if (shoukuan_setting_fubiao == "1")
-	{
-		fubiao->SetCheck(true);
-	}
-	else
-	{
-		fubiao->SetCheck(false);
-	}
-
-	CCheckBoxUI* yuyinbobao = static_cast<CCheckBoxUI*>(m_pm.FindControl(L"shoukuan_setting_yuyinbobao"));
-	std::string shoukuan_setting_yuyinbobao = CSetting::GetParam("shoukuan_setting_yuyinbobao");
-	if (shoukuan_setting_yuyinbobao == "1")
-	{
-		yuyinbobao->SetCheck(true);
-	}
-	else
-	{
-		yuyinbobao->SetCheck(false);
-	}
-
-	CCheckBoxUI* mianqueren = static_cast<CCheckBoxUI*>(m_pm.FindControl(L"shoukuan_setting_mianqueren"));
-	std::string shoukuan_setting_mianqueren = CSetting::GetParam("shoukuan_setting_mianqueren");
-	if (shoukuan_setting_mianqueren == "1")
-	{
-		mianqueren->SetCheck(true);
-	}
-	else
-	{
-		mianqueren->SetCheck(false);
-	}
-
-	CCheckBoxUI* is_http_proxy = static_cast<CCheckBoxUI*>(m_pm.FindControl(L"shoukuan_setting_isdaili"));
-	std::string http_is_proxy = CSetting::GetParam("http_is_proxy");
-	if (http_is_proxy == "1")
-	{
-		is_http_proxy->SetCheck(true);
-	}
-	else
-	{
-		is_http_proxy->SetCheck(false);
-	}
-
-	CEditUI* httpIpEdit = static_cast<CEditUI*>(m_pm.FindControl(L"shoukuan_setting_daili_ip"));
-	httpIpEdit->SetText(CLewaimaiString::UTF8ToUnicode(CSetting::GetParam("http_proxy_ip")).c_str());
-
-	CEditUI* httpPortEdit = static_cast<CEditUI*>(m_pm.FindControl(L"shoukuan_setting_daili_port"));
-	httpPortEdit->SetText(CLewaimaiString::UTF8ToUnicode(CSetting::GetParam("http_proxy_port")).c_str());
-
-	CEditUI* httpUsernameEdit = static_cast<CEditUI*>(m_pm.FindControl(L"shoukuan_setting_daili_username"));
-	httpUsernameEdit->SetText(CLewaimaiString::UTF8ToUnicode(CSetting::GetParam("http_proxy_username")).c_str());
-
-	CEditUI* httpPasswordEdit = static_cast<CEditUI*>(m_pm.FindControl(L"shoukuan_setting_daili_password"));
-	httpPasswordEdit->SetText(CLewaimaiString::UTF8ToUnicode(CSetting::GetParam("http_proxy_password")).c_str());
+    //开始收款设置
+    CCheckBoxUI* kaijiqidong = static_cast<CCheckBoxUI*>(m_pm.FindControl(L"shoukuan_setting_kaijiqidong"));
+    if(CSystem::IsAutoStart())
+    {
+        kaijiqidong->SetCheck(true);
+    }
+    else
+    {
+        kaijiqidong->SetCheck(false);
+    }
+
+    std::string shoukuan_setting_fubiao = CSetting::GetParam("shoukuan_setting_fubiao");
+    CCheckBoxUI* fubiao = static_cast<CCheckBoxUI*>(m_pm.FindControl(L"shoukuan_setting_fubiao"));
+    if(shoukuan_setting_fubiao == "1")
+    {
+        fubiao->SetCheck(true);
+    }
+    else
+    {
+        fubiao->SetCheck(false);
+    }
+
+    CCheckBoxUI* yuyinbobao = static_cast<CCheckBoxUI*>(m_pm.FindControl(L"shoukuan_setting_yuyinbobao"));
+    std::string shoukuan_setting_yuyinbobao = CSetting::GetParam("shoukuan_setting_yuyinbobao");
+    if(shoukuan_setting_yuyinbobao == "1")
+    {
+        yuyinbobao->SetCheck(true);
+    }
+    else
+    {
+        yuyinbobao->SetCheck(false);
+    }
+
+    CCheckBoxUI* mianqueren = static_cast<CCheckBoxUI*>(m_pm.FindControl(L"shoukuan_setting_mianqueren"));
+    std::string shoukuan_setting_mianqueren = CSetting::GetParam("shoukuan_setting_mianqueren");
+    if(shoukuan_setting_mianqueren == "1")
+    {
+        mianqueren->SetCheck(true);
+    }
+    else
+    {
+        mianqueren->SetCheck(false);
+    }
+
+    CCheckBoxUI* is_http_proxy = static_cast<CCheckBoxUI*>(m_pm.FindControl(L"shoukuan_setting_isdaili"));
+    std::string http_is_proxy = CSetting::GetParam("http_is_proxy");
+    if(http_is_proxy == "1")
+    {
+        is_http_proxy->SetCheck(true);
+    }
+    else
+    {
+        is_http_proxy->SetCheck(false);
+    }
+
+    CEditUI* httpIpEdit = static_cast<CEditUI*>(m_pm.FindControl(L"shoukuan_setting_daili_ip"));
+    httpIpEdit->SetText(CLewaimaiString::UTF8ToUnicode(CSetting::GetParam("http_proxy_ip")).c_str());
+
+    CEditUI* httpPortEdit = static_cast<CEditUI*>(m_pm.FindControl(L"shoukuan_setting_daili_port"));
+    httpPortEdit->SetText(CLewaimaiString::UTF8ToUnicode(CSetting::GetParam("http_proxy_port")).c_str());
+
+    CEditUI* httpUsernameEdit = static_cast<CEditUI*>(m_pm.FindControl(L"shoukuan_setting_daili_username"));
+    httpUsernameEdit->SetText(CLewaimaiString::UTF8ToUnicode(CSetting::GetParam("http_proxy_username")).c_str());
+
+    CEditUI* httpPasswordEdit = static_cast<CEditUI*>(m_pm.FindControl(L"shoukuan_setting_daili_password"));
+    httpPasswordEdit->SetText(CLewaimaiString::UTF8ToUnicode(CSetting::GetParam("http_proxy_password")).c_str());
 
     //初始化快捷键的展示
     UINT shoukuan_mod = (UINT)atoi(CSetting::GetParam("system_setting_kuaijiejian_shoukuan_mod").c_str());
     UINT shoukuan_vk = (UINT)atoi(CSetting::GetParam("system_setting_kuaijiejian_shoukuan_vk").c_str());
 
+    UINT tuikuan_mod = (UINT)atoi(CSetting::GetParam("system_setting_kuaijiejian_tuikuan_mod").c_str());
+    UINT tuikuan_vk = (UINT)atoi(CSetting::GetParam("system_setting_kuaijiejian_tuikuan_vk").c_str());
+
+    UINT jiaoyijilu_mod = (UINT)atoi(CSetting::GetParam("system_setting_kuaijiejian_jiaoyijilu_mod").c_str());
+    UINT jiaoyijilu_vk = (UINT)atoi(CSetting::GetParam("system_setting_kuaijiejian_jiaoyijilu_vk").c_str());
+
+    UINT jiaoyihuizong_mod = (UINT)atoi(CSetting::GetParam("system_setting_kuaijiejian_jiaoyihuizong_mod").c_str());
+    UINT jiaoyihuizong_vk = (UINT)atoi(CSetting::GetParam("system_setting_kuaijiejian_jiaoyihuizong_vk").c_str());
+
+    UINT jiaoban_mod = (UINT)atoi(CSetting::GetParam("system_setting_kuaijiejian_jiaoban_mod").c_str());
+    UINT jiaoban_vk = (UINT)atoi(CSetting::GetParam("system_setting_kuaijiejian_jiaoban_vk").c_str());
+
+    UINT shezhi_mod = (UINT)atoi(CSetting::GetParam("system_setting_kuaijiejian_shezhi_mod").c_str());
+    UINT shezhi_vk = (UINT)atoi(CSetting::GetParam("system_setting_kuaijiejian_shezhi_vk").c_str());
+
     CDuiString shoukuan_info;
     if(shoukuan_mod == 2)
     {
@@ -420,8 +435,93 @@ void CSystemSettingWnd::Init()
         shoukuan_info.Format(_T("SHIFT + %c"), shoukuan_vk);
     }
 
-    CButtonUI* jiesuan_edit = static_cast<CButtonUI*>(m_pm.FindControl(_T("kuaijiejian_setting_jiesuan_btn")));
-    jiesuan_edit->SetText(shoukuan_info);
+    CButtonUI* shoukuan_edit = static_cast<CButtonUI*>(m_pm.FindControl(_T("kuaijiejian_setting_shoukuan_btn")));
+    shoukuan_edit->SetText(shoukuan_info);
+
+    CDuiString tuikuan_info;
+    if(tuikuan_mod == 2)
+    {
+        tuikuan_info.Format(_T("CTRL + %c"), tuikuan_vk);
+    }
+    else if(tuikuan_mod == 1)
+    {
+        tuikuan_info.Format(_T("ALT + %c"), tuikuan_vk);
+    }
+    else if(tuikuan_mod == 4)
+    {
+        tuikuan_info.Format(_T("SHIFT + %c"), tuikuan_vk);
+    }
+
+    CButtonUI* tuikuan_edit = static_cast<CButtonUI*>(m_pm.FindControl(_T("kuaijiejian_setting_tuikuan_btn")));
+    tuikuan_edit->SetText(tuikuan_info);
+
+    CDuiString jiaoyijilu_info;
+    if(jiaoyijilu_mod == 2)
+    {
+        jiaoyijilu_info.Format(_T("CTRL + %c"), jiaoyijilu_vk);
+    }
+    else if(jiaoyijilu_mod == 1)
+    {
+        jiaoyijilu_info.Format(_T("ALT + %c"), jiaoyijilu_vk);
+    }
+    else if(jiaoyijilu_mod == 4)
+    {
+        jiaoyijilu_info.Format(_T("SHIFT + %c"), jiaoyijilu_vk);
+    }
+
+    CButtonUI* jiaoyijilu_edit = static_cast<CButtonUI*>(m_pm.FindControl(_T("kuaijiejian_setting_jiaoyijilu_btn")));
+    jiaoyijilu_edit->SetText(jiaoyijilu_info);
+
+    CDuiString jiaoyihuizong_info;
+    if(jiaoyihuizong_mod == 2)
+    {
+        jiaoyihuizong_info.Format(_T("CTRL + %c"), jiaoyihuizong_vk);
+    }
+    else if(jiaoyihuizong_mod == 1)
+    {
+        jiaoyihuizong_info.Format(_T("ALT + %c"), jiaoyihuizong_vk);
+    }
+    else if(jiaoyihuizong_mod == 4)
+    {
+        jiaoyihuizong_info.Format(_T("SHIFT + %c"), jiaoyihuizong_vk);
+    }
+
+    CButtonUI* jiaoyihuizong_edit = static_cast<CButtonUI*>(m_pm.FindControl(_T("kuaijiejian_setting_jiaoyihuizong_btn")));
+    jiaoyihuizong_edit->SetText(jiaoyihuizong_info);
+
+    CDuiString jiaoban_info;
+    if(jiaoban_mod == 2)
+    {
+        jiaoban_info.Format(_T("CTRL + %c"), jiaoban_vk);
+    }
+    else if(jiaoban_mod == 1)
+    {
+        jiaoban_info.Format(_T("ALT + %c"), jiaoban_vk);
+    }
+    else if(jiaoban_mod == 4)
+    {
+        jiaoban_info.Format(_T("SHIFT + %c"), jiaoban_vk);
+    }
+
+    CButtonUI* jiaoban_edit = static_cast<CButtonUI*>(m_pm.FindControl(_T("kuaijiejian_setting_jiaoban_btn")));
+    jiaoban_edit->SetText(jiaoban_info);
+
+    CDuiString shezhi_info;
+    if(shezhi_mod == 2)
+    {
+        shezhi_info.Format(_T("CTRL + %c"), shezhi_vk);
+    }
+    else if(shezhi_mod == 1)
+    {
+        shezhi_info.Format(_T("ALT + %c"), shezhi_vk);
+    }
+    else if(shezhi_mod == 4)
+    {
+        shezhi_info.Format(_T("SHIFT + %c"), shezhi_vk);
+    }
+
+    CButtonUI* shezhi_edit = static_cast<CButtonUI*>(m_pm.FindControl(_T("kuaijiejian_setting_shezhi_btn")));
+    shezhi_edit->SetText(shezhi_info);
 
     //关于我们
     CLabelUI* version = static_cast<CLabelUI*>(m_pm.FindControl(_T("about_version")));
@@ -462,8 +562,8 @@ LRESULT CSystemSettingWnd::OnCreate(UINT uMsg, WPARAM wParam, LPARAM lParam, BOO
 
 LRESULT CSystemSettingWnd::OnClose(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
 {
-	bHandled = FALSE;
-	return 0;
+    bHandled = FALSE;
+    return 0;
 }
 
 /*
@@ -471,17 +571,17 @@ LRESULT CSystemSettingWnd::OnClose(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL
  **/
 LRESULT CSystemSettingWnd::OnDestroy(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
 {
-	bHandled = FALSE;
-	return 0;
+    bHandled = FALSE;
+    return 0;
 }
 
 LRESULT CSystemSettingWnd::OnNcActivate(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
 {
-	if (::IsIconic(*this))
-	{
-		bHandled = FALSE;
-	}
-	return (wParam == 0) ? TRUE : FALSE;
+    if(::IsIconic(*this))
+    {
+        bHandled = FALSE;
+    }
+    return (wParam == 0) ? TRUE : FALSE;
 }
 
 LRESULT CSystemSettingWnd::OnNcHitTest(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
@@ -537,7 +637,7 @@ LRESULT CSystemSettingWnd::OnKeyDown(UINT uMsg, WPARAM wParam, LPARAM lParam, BO
             if(wParam != VK_CONTROL && wParam != VK_MENU && wParam != VK_SHIFT)
             {
                 //这个情况,按的是字母键之类的
-                CDuiString duiText;
+				CDuiString duiText;
 
                 if(VK_F1 <= wParam && wParam <= VK_F12)
                 {
@@ -571,9 +671,34 @@ LRESULT CSystemSettingWnd::OnKeyDown(UINT uMsg, WPARAM wParam, LPARAM lParam, BO
                 //到这里来设置成功了,做展示
                 if(m_kuaijiejian_type == 1)
                 {
-                    CEditUI* focusEdit = static_cast<CEditUI*>(m_pm.FindControl(_T("kuaijiejian_setting_jiesuan_btn")));
+                    CEditUI* focusEdit = static_cast<CEditUI*>(m_pm.FindControl(_T("kuaijiejian_setting_shoukuan_btn")));
                     focusEdit->SetText(duiText);
                 }
+				else if (m_kuaijiejian_type == 2)
+				{
+					CEditUI* focusEdit = static_cast<CEditUI*>(m_pm.FindControl(_T("kuaijiejian_setting_tuikuan_btn")));
+					focusEdit->SetText(duiText);
+				}
+				else if (m_kuaijiejian_type == 3)
+				{
+					CEditUI* focusEdit = static_cast<CEditUI*>(m_pm.FindControl(_T("kuaijiejian_setting_jiaoyijilu_btn")));
+					focusEdit->SetText(duiText);
+				}
+				else if (m_kuaijiejian_type == 4)
+				{
+					CEditUI* focusEdit = static_cast<CEditUI*>(m_pm.FindControl(_T("kuaijiejian_setting_jiaoyihuizong_btn")));
+					focusEdit->SetText(duiText);
+				}
+				else if (m_kuaijiejian_type == 5)
+				{
+					CEditUI* focusEdit = static_cast<CEditUI*>(m_pm.FindControl(_T("kuaijiejian_setting_jiaobao_btn")));
+					focusEdit->SetText(duiText);
+				}
+				else if (m_kuaijiejian_type == 6)
+				{
+					CEditUI* focusEdit = static_cast<CEditUI*>(m_pm.FindControl(_T("kuaijiejian_setting_shezhi_btn")));
+					focusEdit->SetText(duiText);
+				}
 
                 m_vk = wParam;
                 m_isSet = true;
@@ -621,8 +746,36 @@ LRESULT CSystemSettingWnd::OnKeyDown(UINT uMsg, WPARAM wParam, LPARAM lParam, BO
                 if(wParam != VK_CONTROL && wParam != VK_MENU && wParam != VK_SHIFT)
                 {
                     //准备开始注册热键了
-                    CSetting::SetParam("system_setting_kuaijiejian_shoukuan_mod", to_string(m_mod));
-                    CSetting::SetParam("system_setting_kuaijiejian_shoukuan_vk", to_string(m_vk));
+					if (m_kuaijiejian_type == 1)
+					{
+						CSetting::SetParam("system_setting_kuaijiejian_shoukuan_mod", to_string(m_mod));
+						CSetting::SetParam("system_setting_kuaijiejian_shoukuan_vk", to_string(m_vk));
+					}
+					else if (m_kuaijiejian_type == 2)
+					{
+						CSetting::SetParam("system_setting_kuaijiejian_tuikuan_mod", to_string(m_mod));
+						CSetting::SetParam("system_setting_kuaijiejian_tuikuan_vk", to_string(m_vk));
+					}
+					else if (m_kuaijiejian_type == 3)
+					{
+						CSetting::SetParam("system_setting_kuaijiejian_jiaoyijilu_mod", to_string(m_mod));
+						CSetting::SetParam("system_setting_kuaijiejian_jiaoyijilu_vk", to_string(m_vk));
+					}
+					else if (m_kuaijiejian_type == 4)
+					{
+						CSetting::SetParam("system_setting_kuaijiejian_jiaoyihuizong_mod", to_string(m_mod));
+						CSetting::SetParam("system_setting_kuaijiejian_jiaoyihuizong_vk", to_string(m_vk));
+					}
+					else if (m_kuaijiejian_type == 5)
+					{
+						CSetting::SetParam("system_setting_kuaijiejian_jiaoban_mod", to_string(m_mod));
+						CSetting::SetParam("system_setting_kuaijiejian_jiaoban_vk", to_string(m_vk));
+					}
+					else if (m_kuaijiejian_type == 6)
+					{
+						CSetting::SetParam("system_setting_kuaijiejian_shezhi_mod", to_string(m_mod));
+						CSetting::SetParam("system_setting_kuaijiejian_shezhi_vk", to_string(m_vk));
+					}
 
                     m_valueWnd->UpdateRegisterHotKey();
                 }
@@ -645,12 +798,12 @@ LRESULT CSystemSettingWnd::HandleMessage(UINT uMsg, WPARAM wParam, LPARAM lParam
     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_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;
@@ -715,7 +868,7 @@ void CSystemSettingWnd::HandleClickMsg(TNotifyUI& msg)
 
     if(senderName == _T("system_setting_closebtn"))
     {
-		m_valueWnd->CloseSystemSetting();
+        m_valueWnd->CloseSystemSetting();
 
         return;
     }
@@ -898,89 +1051,89 @@ void CSystemSettingWnd::HandleClickMsg(TNotifyUI& msg)
     {
         m_valueWnd->PrintTest();
     }
-	else if (senderName == _T("shoukuan_setting_save"))
-	{
-		//点击了收款设置的保存按钮
-
-		//先处理开机启动
-		CCheckBoxUI* kaijiqidong = static_cast<CCheckBoxUI*>(m_pm.FindControl(L"shoukuan_setting_kaijiqidong"));
-		if (kaijiqidong->IsSelected())
-		{
-			CSystem::autostart();
-		}
-		else
-		{
-			CSystem::cancelAutoStart();
-		}
-
-		//再处理浮标
-		CCheckBoxUI* fubiao = static_cast<CCheckBoxUI*>(m_pm.FindControl(L"shoukuan_setting_fubiao"));
-		if (fubiao->IsSelected())
-		{
-			m_valueWnd->ShowWindow(true);
-
-			CSetting::SetParam("shoukuan_setting_fubiao", "1");
-		}
-		else
-		{
-			m_valueWnd->ShowWindow(false);
-
-			CSetting::SetParam("shoukuan_setting_fubiao", "0");
-		}
-
-		//处理语音播报
-		CCheckBoxUI* yuyinbobao = static_cast<CCheckBoxUI*>(m_pm.FindControl(L"shoukuan_setting_yuyinbobao"));
-		if (yuyinbobao->IsSelected())
-		{
-			CSetting::SetParam("shoukuan_setting_yuyinbobao", "1");
-		}
-		else
-		{
-			CSetting::SetParam("shoukuan_setting_yuyinbobao", "0");
-		}
-
-		//处理收款免确认
-		CCheckBoxUI* mianqueren = static_cast<CCheckBoxUI*>(m_pm.FindControl(L"shoukuan_setting_mianqueren"));
-		if (mianqueren->IsSelected())
-		{
-			CSetting::SetParam("shoukuan_setting_mianqueren", "1");
-		}
-		else
-		{
-			CSetting::SetParam("shoukuan_setting_mianqueren", "0");
-		}
-
-		//Http代理相关
-		CCheckBoxUI* is_http_proxy = static_cast<CCheckBoxUI*>(m_pm.FindControl(L"shoukuan_setting_isdaili"));
-		if (is_http_proxy->IsSelected())
-		{
-			CSetting::SetParam("http_is_proxy", "1");
-		}
-		else
-		{
-			CSetting::SetParam("http_is_proxy", "0");
-		}
-
-		CEditUI* httpIpEdit = static_cast<CEditUI*>(m_pm.FindControl(L"shoukuan_setting_daili_ip"));
-		std::wstring http_proxy_ip = httpIpEdit->GetText();
-		CSetting::SetParam("http_proxy_ip", CLewaimaiString::UnicodeToUTF8(http_proxy_ip));
-
-		CEditUI* httpPortEdit = static_cast<CEditUI*>(m_pm.FindControl(L"shoukuan_setting_daili_port"));
-		std::wstring http_proxy_port = httpPortEdit->GetText();
-		CSetting::SetParam("http_proxy_port", CLewaimaiString::UnicodeToUTF8(http_proxy_port));
-
-		CEditUI* httpUsernameEdit = static_cast<CEditUI*>(m_pm.FindControl(L"shoukuan_setting_daili_username"));
-		std::wstring http_proxy_username = httpUsernameEdit->GetText();
-		CSetting::SetParam("http_proxy_username", CLewaimaiString::UnicodeToUTF8(http_proxy_username));
-
-		CEditUI* httpPassswordEdit = static_cast<CEditUI*>(m_pm.FindControl(L"shoukuan_setting_daili_password"));
-		std::wstring http_proxy_password = httpPassswordEdit->GetText();
-		CSetting::SetParam("http_proxy_password", CLewaimaiString::UnicodeToUTF8(http_proxy_password));
-
-		//更新httt代理状态
-		CZhipuziHttpClient::UpdateProxy();
-	}
-    else if(senderName == _T("kuaijiejian_setting_jiesuan_btn"))
+    else if(senderName == _T("shoukuan_setting_save"))
+    {
+        //点击了收款设置的保存按钮
+
+        //先处理开机启动
+        CCheckBoxUI* kaijiqidong = static_cast<CCheckBoxUI*>(m_pm.FindControl(L"shoukuan_setting_kaijiqidong"));
+        if(kaijiqidong->IsSelected())
+        {
+            CSystem::autostart();
+        }
+        else
+        {
+            CSystem::cancelAutoStart();
+        }
+
+        //再处理浮标
+        CCheckBoxUI* fubiao = static_cast<CCheckBoxUI*>(m_pm.FindControl(L"shoukuan_setting_fubiao"));
+        if(fubiao->IsSelected())
+        {
+            m_valueWnd->ShowWindow(true);
+
+            CSetting::SetParam("shoukuan_setting_fubiao", "1");
+        }
+        else
+        {
+            m_valueWnd->ShowWindow(false);
+
+            CSetting::SetParam("shoukuan_setting_fubiao", "0");
+        }
+
+        //处理语音播报
+        CCheckBoxUI* yuyinbobao = static_cast<CCheckBoxUI*>(m_pm.FindControl(L"shoukuan_setting_yuyinbobao"));
+        if(yuyinbobao->IsSelected())
+        {
+            CSetting::SetParam("shoukuan_setting_yuyinbobao", "1");
+        }
+        else
+        {
+            CSetting::SetParam("shoukuan_setting_yuyinbobao", "0");
+        }
+
+        //处理收款免确认
+        CCheckBoxUI* mianqueren = static_cast<CCheckBoxUI*>(m_pm.FindControl(L"shoukuan_setting_mianqueren"));
+        if(mianqueren->IsSelected())
+        {
+            CSetting::SetParam("shoukuan_setting_mianqueren", "1");
+        }
+        else
+        {
+            CSetting::SetParam("shoukuan_setting_mianqueren", "0");
+        }
+
+        //Http代理相关
+        CCheckBoxUI* is_http_proxy = static_cast<CCheckBoxUI*>(m_pm.FindControl(L"shoukuan_setting_isdaili"));
+        if(is_http_proxy->IsSelected())
+        {
+            CSetting::SetParam("http_is_proxy", "1");
+        }
+        else
+        {
+            CSetting::SetParam("http_is_proxy", "0");
+        }
+
+        CEditUI* httpIpEdit = static_cast<CEditUI*>(m_pm.FindControl(L"shoukuan_setting_daili_ip"));
+        std::wstring http_proxy_ip = httpIpEdit->GetText();
+        CSetting::SetParam("http_proxy_ip", CLewaimaiString::UnicodeToUTF8(http_proxy_ip));
+
+        CEditUI* httpPortEdit = static_cast<CEditUI*>(m_pm.FindControl(L"shoukuan_setting_daili_port"));
+        std::wstring http_proxy_port = httpPortEdit->GetText();
+        CSetting::SetParam("http_proxy_port", CLewaimaiString::UnicodeToUTF8(http_proxy_port));
+
+        CEditUI* httpUsernameEdit = static_cast<CEditUI*>(m_pm.FindControl(L"shoukuan_setting_daili_username"));
+        std::wstring http_proxy_username = httpUsernameEdit->GetText();
+        CSetting::SetParam("http_proxy_username", CLewaimaiString::UnicodeToUTF8(http_proxy_username));
+
+        CEditUI* httpPassswordEdit = static_cast<CEditUI*>(m_pm.FindControl(L"shoukuan_setting_daili_password"));
+        std::wstring http_proxy_password = httpPassswordEdit->GetText();
+        CSetting::SetParam("http_proxy_password", CLewaimaiString::UnicodeToUTF8(http_proxy_password));
+
+        //更新httt代理状态
+        CZhipuziHttpClient::UpdateProxy();
+    }
+    else if(senderName == _T("kuaijiejian_setting_shoukuan_btn"))
     {
         m_kuaijiejian_type = 1;
 
@@ -988,10 +1141,50 @@ void CSystemSettingWnd::HandleClickMsg(TNotifyUI& msg)
         m_vk = 0;
         m_isSet = false;
     }
-	else if (senderName == L"system_setting_logout")
-	{
-		m_valueWnd->Logout();
-	}
+    else if(senderName == _T("kuaijiejian_setting_tuikuan_btn"))
+    {
+        m_kuaijiejian_type = 2;
+
+        m_mod = 0;
+        m_vk = 0;
+        m_isSet = false;
+    }
+    else if(senderName == _T("kuaijiejian_setting_jiaoyijilu_btn"))
+    {
+        m_kuaijiejian_type = 3;
+
+        m_mod = 0;
+        m_vk = 0;
+        m_isSet = false;
+    }
+    else if(senderName == _T("kuaijiejian_setting_jiaoyihuizong_btn"))
+    {
+        m_kuaijiejian_type = 4;
+
+        m_mod = 0;
+        m_vk = 0;
+        m_isSet = false;
+    }
+    else if(senderName == _T("kuaijiejian_setting_jiaoban_btn"))
+    {
+        m_kuaijiejian_type = 5;
+
+        m_mod = 0;
+        m_vk = 0;
+        m_isSet = false;
+    }
+    else if(senderName == _T("kuaijiejian_setting_shezhi_btn"))
+    {
+        m_kuaijiejian_type = 6;
+
+        m_mod = 0;
+        m_vk = 0;
+        m_isSet = false;
+    }
+    else if(senderName == L"system_setting_logout")
+    {
+        m_valueWnd->Logout();
+    }
 }
 
 void CSystemSettingWnd::HandleSelectChangeMsg(TNotifyUI& msg)
@@ -1019,15 +1212,15 @@ void CSystemSettingWnd::HandleSelectChangeMsg(TNotifyUI& msg)
         }
     }
 
-	else if (name == _T("system_setting_option_shoukuanshezhi"))
-	{
-		CTabLayoutUI* pControl = static_cast<CTabLayoutUI*>(m_pm.FindControl(_T("switch")));
+    else if(name == _T("system_setting_option_shoukuanshezhi"))
+    {
+        CTabLayoutUI* pControl = static_cast<CTabLayoutUI*>(m_pm.FindControl(_T("switch")));
 
-		if (pControl && pControl->GetCurSel() != 2)
-		{
-			pControl->SelectItem(2);
-		}
-	}
+        if(pControl && pControl->GetCurSel() != 2)
+        {
+            pControl->SelectItem(2);
+        }
+    }
 
     else if(name == _T("system_setting_option_kuaijiejian"))
     {

+ 96 - 4
zhipuzi_pay_plugin/wnd/CValueWnd.cpp

@@ -851,14 +851,57 @@ LRESULT CValueWnd::OnHotKey(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHand
 	UINT  fuModifiers = (UINT)LOWORD(lParam);
 	UINT  uVirtKey = (UINT)HIWORD(lParam);
 
+	if (m_is_show_setting)
+	{
+		//如果当前在设置页面,就不处理快捷键消息,避免影响快捷键的重新设置
+
+		bHandled = FALSE;
+		return 0;
+	}
+
 	//判断响应了什么热键   
 	if (wParam == WM_MYHOTKEY_SHOUKUAN)
 	{
-		if (m_is_show_setting == false)
+		if (m_is_show_shoukuan == false)
 		{
 			ShowShoukuan();
 		}
 	}
+	else if (wParam == WM_MYHOTKEY_TUIKUAN)
+	{
+		if (m_is_show_tuikuan == false)
+		{
+			ShowTuikuan();
+		}
+	}
+	else if (wParam == WM_MYHOTKEY_JIAOYIJILU)
+	{
+		if (m_is_show_jiaoyijilu == false)
+		{
+			ShowJiaoyijilu();
+		}
+	}
+	else if (wParam == WM_MYHOTKEY_JIAOYIHUIZONG)
+	{
+		if (m_is_show_jiaoyihuizong == false)
+		{
+			ShowJiaoyihuizong();
+		}
+	}
+	else if (wParam == WM_MYHOTKEY_JIAOBAN)
+	{
+		if (m_is_show_jiaoban == false)
+		{
+			ShowJiaoban();
+		}
+	}
+	else if (wParam == WM_MYHOTKEY_SHEZHI)
+	{
+		if (m_is_show_setting == false)
+		{
+			ShowSystemSetting();
+		}
+	}
 
 	bHandled = TRUE;
 	return  0;
@@ -1036,6 +1079,11 @@ bool CValueWnd::Clear()
 	
 	//取消注册的快捷键
 	UnregisterHotKey(m_hWnd, WM_MYHOTKEY_SHOUKUAN);
+	UnregisterHotKey(m_hWnd, WM_MYHOTKEY_TUIKUAN);
+	UnregisterHotKey(m_hWnd, WM_MYHOTKEY_JIAOYIJILU);
+	UnregisterHotKey(m_hWnd, WM_MYHOTKEY_JIAOYIHUIZONG);
+	UnregisterHotKey(m_hWnd, WM_MYHOTKEY_JIAOBAN);
+	UnregisterHotKey(m_hWnd, WM_MYHOTKEY_SHEZHI);
 
 	//删除右下角的托盘
 	Shell_NotifyIcon(NIM_DELETE, &m_trayIcon);
@@ -1398,17 +1446,61 @@ tesseract::TessBaseAPI& CValueWnd::GetTess()
 	return m_tess;
 }
 
-bool CValueWnd::UpdateRegisterHotKey()
+void CValueWnd::UpdateRegisterHotKey()
 {	
+	//收款
 	UINT shoukuan_mod = (UINT)atoi(CSetting::GetParam("system_setting_kuaijiejian_shoukuan_mod").c_str());
 	UINT shoukuan_vk = (UINT)atoi(CSetting::GetParam("system_setting_kuaijiejian_shoukuan_vk").c_str());
 
 	//先卸载旧的,再注册新的
 	UnregisterHotKey(m_hWnd, WM_MYHOTKEY_SHOUKUAN);
 
-	int nRet = RegisterHotKey(m_hWnd, WM_MYHOTKEY_SHOUKUAN, shoukuan_mod, shoukuan_vk);
+	RegisterHotKey(m_hWnd, WM_MYHOTKEY_SHOUKUAN, shoukuan_mod, shoukuan_vk);
+
+	//退款
+	UINT tuikuan_mod = (UINT)atoi(CSetting::GetParam("system_setting_kuaijiejian_tuikuan_mod").c_str());
+	UINT tuikuan_vk = (UINT)atoi(CSetting::GetParam("system_setting_kuaijiejian_tuikuan_vk").c_str());
+
+	//先卸载旧的,再注册新的
+	UnregisterHotKey(m_hWnd, WM_MYHOTKEY_TUIKUAN);
+
+	RegisterHotKey(m_hWnd, WM_MYHOTKEY_TUIKUAN, tuikuan_mod, tuikuan_vk);
+
+	//交易记录
+	UINT jiaoyijilu_mod = (UINT)atoi(CSetting::GetParam("system_setting_kuaijiejian_jiaoyijilu_mod").c_str());
+	UINT jiaoyijilu_vk = (UINT)atoi(CSetting::GetParam("system_setting_kuaijiejian_jiaoyijilu_vk").c_str());
+
+	//先卸载旧的,再注册新的
+	UnregisterHotKey(m_hWnd, WM_MYHOTKEY_JIAOYIJILU);
+
+	RegisterHotKey(m_hWnd, WM_MYHOTKEY_JIAOYIJILU, jiaoyijilu_mod, jiaoyijilu_vk);
+
+	//交易汇总
+	UINT jiaoyihuizong_mod = (UINT)atoi(CSetting::GetParam("system_setting_kuaijiejian_jiaoyihuizong_mod").c_str());
+	UINT jiaoyihuizong_vk = (UINT)atoi(CSetting::GetParam("system_setting_kuaijiejian_jiaoyihuizong_vk").c_str());
+
+	//先卸载旧的,再注册新的
+	UnregisterHotKey(m_hWnd, WM_MYHOTKEY_JIAOYIHUIZONG);
+
+	RegisterHotKey(m_hWnd, WM_MYHOTKEY_JIAOYIHUIZONG, jiaoyihuizong_mod, jiaoyihuizong_vk);
+
+	//交班
+	UINT jiaoban_mod = (UINT)atoi(CSetting::GetParam("system_setting_kuaijiejian_jiaoban_mod").c_str());
+	UINT jiaoban_vk = (UINT)atoi(CSetting::GetParam("system_setting_kuaijiejian_jiaoban_vk").c_str());
+
+	//先卸载旧的,再注册新的
+	UnregisterHotKey(m_hWnd, WM_MYHOTKEY_JIAOBAN);
+
+	RegisterHotKey(m_hWnd, WM_MYHOTKEY_JIAOBAN, jiaoban_mod, jiaoban_vk);
+
+	//设置
+	UINT shezhi_mod = (UINT)atoi(CSetting::GetParam("system_setting_kuaijiejian_shezhi_mod").c_str());
+	UINT shezhi_vk = (UINT)atoi(CSetting::GetParam("system_setting_kuaijiejian_shezhi_vk").c_str());
+
+	//先卸载旧的,再注册新的
+	UnregisterHotKey(m_hWnd, WM_MYHOTKEY_SHEZHI);
 
-	return nRet;
+	RegisterHotKey(m_hWnd, WM_MYHOTKEY_SHEZHI, shezhi_mod, shezhi_vk);
 }
 
 //全局监听键盘输入

+ 1 - 1
zhipuzi_pay_plugin/wnd/CValueWnd.h

@@ -142,7 +142,7 @@ public:
 
 	tesseract::TessBaseAPI& GetTess();
 
-	bool UpdateRegisterHotKey();
+	void UpdateRegisterHotKey();
 
 	void RegKeyboardRawInput();