From 507b2e798665ce1d6358abf20576b6e8e325b9bc Mon Sep 17 00:00:00 2001 From: ck_yeun9 Date: Sat, 19 Jul 2025 17:00:07 +0800 Subject: [PATCH 01/15] add submodule. --- topsky-hotel-management-system-web-api | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/topsky-hotel-management-system-web-api b/topsky-hotel-management-system-web-api index 0cb2d1a..71afcea 160000 --- a/topsky-hotel-management-system-web-api +++ b/topsky-hotel-management-system-web-api @@ -1 +1 @@ -Subproject commit 0cb2d1a9f09d594f2829f73bd05c92c2c9eff075 +Subproject commit 71afcea099515616fd0f17a841f38baa66978ca2 -- Gitee From f79a1d7d67add79215a16073c15d51d7e57fe36a Mon Sep 17 00:00:00 2001 From: ck_yeun9 Date: Sat, 19 Jul 2025 17:49:10 +0800 Subject: [PATCH 02/15] add submodule. --- topsky-hotel-management-system-web-api | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/topsky-hotel-management-system-web-api b/topsky-hotel-management-system-web-api index 71afcea..1f277e6 160000 --- a/topsky-hotel-management-system-web-api +++ b/topsky-hotel-management-system-web-api @@ -1 +1 @@ -Subproject commit 71afcea099515616fd0f17a841f38baa66978ca2 +Subproject commit 1f277e6ed986829d433ae3a37d1a00b67cd354b7 -- Gitee From 6cbddbe8371ac5a27a3d9fe02cada351fc3d729f Mon Sep 17 00:00:00 2001 From: ck_yeun9 Date: Sun, 20 Jul 2025 05:28:07 +0000 Subject: [PATCH 03/15] update README.md. Signed-off-by: ck_yeun9 --- README.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 021feb1..419608e 100644 --- a/README.md +++ b/README.md @@ -12,11 +12,13 @@ # :exclamation: 重要说明: - **注意:目前master分支随v2.x版本变动而变动,v2.x版本与v1.x版本变动极大,因此想要v1.x版本的可移步至v1.x分支地址** : https://gitee.com/java-and-net/TopskyHotelManagerSystem/tree/v1.x/ +**1.目前master分支随v2.8.x版本变动而变动,v2.x版本与v1.x版本均以归档,因此想要v1.x和v2.x版本的可移步至对应分支地址:
+ v1.x分支:https://gitee.com/java-and-net/TopskyHotelManagerSystem/tree/v1.x/
+ v2.x分支:https://gitee.com/java-and-net/TopskyHotelManagerSystem/tree/v2.x/** - **即日起,程序版本号规范将固定为x.x.x.x,第一位为当前程序版本,第二位为当前程序框架版本,第三位为功能大变更版本,第四位为日常修复版本,例如:基于.NET 8框架的2.0版本,对应的版本号是2.8.0.0,往后的.NET 9将会是2.9.0.0,并以此类推** +**2.程序版本号规范将固定为x.x.x.x,第一位为当前程序版本,第二位为当前程序框架版本,第三位为功能大变更版本,第四位为日常修复版本,例如:基于NET 8框架的2.0版本,对应的版本号是2.8.0.0,往后的NET 9将会是2.9.0.0,并以此类推。** -**即日起,该项目正式进入维护阶段,不再新增任何功能。同时,我们很高兴地宣布,TopSkyHotelManagementSystem的移动端开发工作正式启动,具体仓库地址为:[TopSkyHotelManagementSystem-MAUI](https://gitee.com/java-and-net/topsky-hotel-management-system-maui),该项目基于.NET 8的MAUI进行开发,目前仅考虑安卓端,其他暂不具备条件。** +**3.该项目正式进入维护阶段,不再新增任何功能。同时,我们很高兴地宣布,TopSkyHotelManagementSystem的移动端开发工作正式启动,具体仓库地址为:[TopSkyHotelManagementSystem-MAUI](https://gitee.com/java-and-net/topsky-hotel-management-system-maui),该项目基于.NET 8的MAUI进行开发,目前仅考虑安卓端,其他暂不具备测试条件。** # :pray: 引用的开源项目: -- Gitee From 1eaa2b0ad4b6f02280c7197362fb588a610de4b4 Mon Sep 17 00:00:00 2001 From: ck_yeun9 Date: Sun, 20 Jul 2025 05:29:15 +0000 Subject: [PATCH 04/15] update README.md. Signed-off-by: ck_yeun9 --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 419608e..319cb6c 100644 --- a/README.md +++ b/README.md @@ -12,9 +12,9 @@ # :exclamation: 重要说明: -**1.目前master分支随v2.8.x版本变动而变动,v2.x版本与v1.x版本均以归档,因此想要v1.x和v2.x版本的可移步至对应分支地址:
+**1.目前master分支随v2.8.x版本变动而变动,v2.0.x版本与v1.x版本均以归档,因此想要v1.x和v2.0.x版本的可移步至对应分支地址:
v1.x分支:https://gitee.com/java-and-net/TopskyHotelManagerSystem/tree/v1.x/
- v2.x分支:https://gitee.com/java-and-net/TopskyHotelManagerSystem/tree/v2.x/** + v2.x分支:https://gitee.com/java-and-net/TopskyHotelManagementSystem/tree/v2.0.x** **2.程序版本号规范将固定为x.x.x.x,第一位为当前程序版本,第二位为当前程序框架版本,第三位为功能大变更版本,第四位为日常修复版本,例如:基于NET 8框架的2.0版本,对应的版本号是2.8.0.0,往后的NET 9将会是2.9.0.0,并以此类推。** -- Gitee From f3120f98f16711720daec8874a5927df7ada0103 Mon Sep 17 00:00:00 2001 From: ck_yeun9 Date: Sat, 9 Aug 2025 17:09:43 +0800 Subject: [PATCH 05/15] housekeep. Refac Infrastructure. --- EOM.Client.TopSkyHotelManagementSystem.sln | 84 +-- .../BackendApi/ApiConstants.cs | 3 +- .../EOM.TSHotelManagement.Common.csproj | 1 + .../Helper/HttpHelper.cs | 2 +- .../LocalInfo/LoginInfo.cs | 5 + .../Util/ApplicationUtil.cs | 49 +- EOM.TSHotelManagement.FormUI/App.config | 12 + .../AppFunction/FrmAbout.Designer.cs | 212 +++++++ .../{FrmAboutUs.cs => FrmAbout.cs} | 23 +- .../AppFunction/FrmAbout.resx | 567 ++++++++++++++++++ .../AppFunction/FrmChangeRoom.cs | 12 +- .../AppFunction/FrmCheckIn.cs | 36 +- .../AppFunction/FrmCheckOutForm.cs | 72 +-- .../AppFunction/FrmCustomerManagement.cs | 24 +- .../AppFunction/FrmEditInputs.cs | 22 +- .../AppFunction/FrmMySpace.cs | 50 +- .../AppFunction/FrmReserList.cs | 30 +- .../AppFunction/FrmReserManagement.cs | 12 +- .../AppFunction/FrmRoomManagement.cs | 22 +- .../AppFunction/FrmRoomStateManagement.cs | 8 +- ....Designer.cs => FrmScreenLock.Designer.cs} | 94 +-- .../AppFunction/FrmScreenLock.cs | 45 ++ .../{FrmAboutUs.resx => FrmScreenLock.resx} | 37 +- .../AppFunction/FrmSelectCustoInfo.cs | 30 +- .../AppFunction/FrmSellThing.cs | 48 +- .../AppInterface/FrmLoading.cs | 11 +- .../AppInterface/FrmLogin.Designer.cs | 2 + .../AppInterface/FrmLogin.cs | 6 +- .../AppMain/FrmMain.Designer.cs | 149 +++-- .../AppMain/FrmMain.cs | 149 +++-- .../AppUserControls/ucRoom.cs | 12 +- .../EOM.TSHotelManagement.FormUI.csproj | 3 +- .../Properties/Resources.Designer.cs | 10 + .../Properties/Resources.resx | 243 ++++---- .../Properties/Settings.Designer.cs | 11 +- .../Properties/Settings.settings | 13 +- .../TableComponent/TableComHelper.cs | 6 +- EOM.TSHotelManagement.FormUI/app.manifest | 31 - .../images/lock_screen.png | Bin 0 -> 318119 bytes topsky-hotel-management-system-web-api | 2 +- 40 files changed, 1518 insertions(+), 630 deletions(-) create mode 100644 EOM.TSHotelManagement.FormUI/AppFunction/FrmAbout.Designer.cs rename EOM.TSHotelManagement.FormUI/AppFunction/{FrmAboutUs.cs => FrmAbout.cs} (63%) create mode 100644 EOM.TSHotelManagement.FormUI/AppFunction/FrmAbout.resx rename EOM.TSHotelManagement.FormUI/AppFunction/{FrmAboutUs.Designer.cs => FrmScreenLock.Designer.cs} (38%) create mode 100644 EOM.TSHotelManagement.FormUI/AppFunction/FrmScreenLock.cs rename EOM.TSHotelManagement.FormUI/AppFunction/{FrmAboutUs.resx => FrmScreenLock.resx} (77%) create mode 100644 EOM.TSHotelManagement.FormUI/images/lock_screen.png diff --git a/EOM.Client.TopSkyHotelManagementSystem.sln b/EOM.Client.TopSkyHotelManagementSystem.sln index 9858e69..b8440f0 100644 --- a/EOM.Client.TopSkyHotelManagementSystem.sln +++ b/EOM.Client.TopSkyHotelManagementSystem.sln @@ -28,50 +28,50 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "EOM.TSHotelManagement.Migra EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU + Debug|x64 = Debug|x64 + Release|x64 = Release|x64 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution - {B55975AB-2C89-4C01-B107-D87FCA21A5E3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {B55975AB-2C89-4C01-B107-D87FCA21A5E3}.Debug|Any CPU.Build.0 = Debug|Any CPU - {B55975AB-2C89-4C01-B107-D87FCA21A5E3}.Release|Any CPU.ActiveCfg = Release|Any CPU - {B55975AB-2C89-4C01-B107-D87FCA21A5E3}.Release|Any CPU.Build.0 = Release|Any CPU - {8F5CF88A-1111-44CC-AFFA-4637EA10E191}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {8F5CF88A-1111-44CC-AFFA-4637EA10E191}.Debug|Any CPU.Build.0 = Debug|Any CPU - {8F5CF88A-1111-44CC-AFFA-4637EA10E191}.Release|Any CPU.ActiveCfg = Release|Any CPU - {8F5CF88A-1111-44CC-AFFA-4637EA10E191}.Release|Any CPU.Build.0 = Release|Any CPU - {566D7064-EA90-45C1-93B7-F512BBAD7BA1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {566D7064-EA90-45C1-93B7-F512BBAD7BA1}.Debug|Any CPU.Build.0 = Debug|Any CPU - {566D7064-EA90-45C1-93B7-F512BBAD7BA1}.Release|Any CPU.ActiveCfg = Release|Any CPU - {566D7064-EA90-45C1-93B7-F512BBAD7BA1}.Release|Any CPU.Build.0 = Release|Any CPU - {48B3F864-88D2-4BD1-A766-B9EBF342AED1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {48B3F864-88D2-4BD1-A766-B9EBF342AED1}.Debug|Any CPU.Build.0 = Debug|Any CPU - {48B3F864-88D2-4BD1-A766-B9EBF342AED1}.Release|Any CPU.ActiveCfg = Release|Any CPU - {48B3F864-88D2-4BD1-A766-B9EBF342AED1}.Release|Any CPU.Build.0 = Release|Any CPU - {9A62B6BE-7C26-465F-A8D1-2CEE66D6F837}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {9A62B6BE-7C26-465F-A8D1-2CEE66D6F837}.Debug|Any CPU.Build.0 = Debug|Any CPU - {9A62B6BE-7C26-465F-A8D1-2CEE66D6F837}.Release|Any CPU.ActiveCfg = Release|Any CPU - {9A62B6BE-7C26-465F-A8D1-2CEE66D6F837}.Release|Any CPU.Build.0 = Release|Any CPU - {781CEE04-DDB4-4037-8175-9A6548716871}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {781CEE04-DDB4-4037-8175-9A6548716871}.Debug|Any CPU.Build.0 = Debug|Any CPU - {781CEE04-DDB4-4037-8175-9A6548716871}.Release|Any CPU.ActiveCfg = Release|Any CPU - {781CEE04-DDB4-4037-8175-9A6548716871}.Release|Any CPU.Build.0 = Release|Any CPU - {D89E76F5-007B-4915-91A8-265CCA6814BF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {D89E76F5-007B-4915-91A8-265CCA6814BF}.Debug|Any CPU.Build.0 = Debug|Any CPU - {D89E76F5-007B-4915-91A8-265CCA6814BF}.Release|Any CPU.ActiveCfg = Release|Any CPU - {D89E76F5-007B-4915-91A8-265CCA6814BF}.Release|Any CPU.Build.0 = Release|Any CPU - {1A37446C-A721-4507-89B5-7BFF6F66A004}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {1A37446C-A721-4507-89B5-7BFF6F66A004}.Debug|Any CPU.Build.0 = Debug|Any CPU - {1A37446C-A721-4507-89B5-7BFF6F66A004}.Release|Any CPU.ActiveCfg = Release|Any CPU - {1A37446C-A721-4507-89B5-7BFF6F66A004}.Release|Any CPU.Build.0 = Release|Any CPU - {7E8046FD-4CB3-4BBC-8ADD-E27FE3DBBB55}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {7E8046FD-4CB3-4BBC-8ADD-E27FE3DBBB55}.Debug|Any CPU.Build.0 = Debug|Any CPU - {7E8046FD-4CB3-4BBC-8ADD-E27FE3DBBB55}.Release|Any CPU.ActiveCfg = Release|Any CPU - {7E8046FD-4CB3-4BBC-8ADD-E27FE3DBBB55}.Release|Any CPU.Build.0 = Release|Any CPU - {A1A986E0-E59D-4913-B63E-D965453B8CC0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {A1A986E0-E59D-4913-B63E-D965453B8CC0}.Debug|Any CPU.Build.0 = Debug|Any CPU - {A1A986E0-E59D-4913-B63E-D965453B8CC0}.Release|Any CPU.ActiveCfg = Release|Any CPU - {A1A986E0-E59D-4913-B63E-D965453B8CC0}.Release|Any CPU.Build.0 = Release|Any CPU + {B55975AB-2C89-4C01-B107-D87FCA21A5E3}.Debug|x64.ActiveCfg = Debug|x64 + {B55975AB-2C89-4C01-B107-D87FCA21A5E3}.Debug|x64.Build.0 = Debug|x64 + {B55975AB-2C89-4C01-B107-D87FCA21A5E3}.Release|x64.ActiveCfg = Release|x64 + {B55975AB-2C89-4C01-B107-D87FCA21A5E3}.Release|x64.Build.0 = Release|x64 + {8F5CF88A-1111-44CC-AFFA-4637EA10E191}.Debug|x64.ActiveCfg = Debug|x64 + {8F5CF88A-1111-44CC-AFFA-4637EA10E191}.Debug|x64.Build.0 = Debug|x64 + {8F5CF88A-1111-44CC-AFFA-4637EA10E191}.Release|x64.ActiveCfg = Release|x64 + {8F5CF88A-1111-44CC-AFFA-4637EA10E191}.Release|x64.Build.0 = Release|x64 + {566D7064-EA90-45C1-93B7-F512BBAD7BA1}.Debug|x64.ActiveCfg = Debug|x64 + {566D7064-EA90-45C1-93B7-F512BBAD7BA1}.Debug|x64.Build.0 = Debug|x64 + {566D7064-EA90-45C1-93B7-F512BBAD7BA1}.Release|x64.ActiveCfg = Release|x64 + {566D7064-EA90-45C1-93B7-F512BBAD7BA1}.Release|x64.Build.0 = Release|x64 + {48B3F864-88D2-4BD1-A766-B9EBF342AED1}.Debug|x64.ActiveCfg = Debug|x64 + {48B3F864-88D2-4BD1-A766-B9EBF342AED1}.Debug|x64.Build.0 = Debug|x64 + {48B3F864-88D2-4BD1-A766-B9EBF342AED1}.Release|x64.ActiveCfg = Release|x64 + {48B3F864-88D2-4BD1-A766-B9EBF342AED1}.Release|x64.Build.0 = Release|x64 + {9A62B6BE-7C26-465F-A8D1-2CEE66D6F837}.Debug|x64.ActiveCfg = Debug|x64 + {9A62B6BE-7C26-465F-A8D1-2CEE66D6F837}.Debug|x64.Build.0 = Debug|x64 + {9A62B6BE-7C26-465F-A8D1-2CEE66D6F837}.Release|x64.ActiveCfg = Release|x64 + {9A62B6BE-7C26-465F-A8D1-2CEE66D6F837}.Release|x64.Build.0 = Release|x64 + {781CEE04-DDB4-4037-8175-9A6548716871}.Debug|x64.ActiveCfg = Debug|x64 + {781CEE04-DDB4-4037-8175-9A6548716871}.Debug|x64.Build.0 = Debug|x64 + {781CEE04-DDB4-4037-8175-9A6548716871}.Release|x64.ActiveCfg = Release|x64 + {781CEE04-DDB4-4037-8175-9A6548716871}.Release|x64.Build.0 = Release|x64 + {D89E76F5-007B-4915-91A8-265CCA6814BF}.Debug|x64.ActiveCfg = Debug|x64 + {D89E76F5-007B-4915-91A8-265CCA6814BF}.Debug|x64.Build.0 = Debug|x64 + {D89E76F5-007B-4915-91A8-265CCA6814BF}.Release|x64.ActiveCfg = Release|x64 + {D89E76F5-007B-4915-91A8-265CCA6814BF}.Release|x64.Build.0 = Release|x64 + {1A37446C-A721-4507-89B5-7BFF6F66A004}.Debug|x64.ActiveCfg = Debug|x64 + {1A37446C-A721-4507-89B5-7BFF6F66A004}.Debug|x64.Build.0 = Debug|x64 + {1A37446C-A721-4507-89B5-7BFF6F66A004}.Release|x64.ActiveCfg = Release|x64 + {1A37446C-A721-4507-89B5-7BFF6F66A004}.Release|x64.Build.0 = Release|x64 + {7E8046FD-4CB3-4BBC-8ADD-E27FE3DBBB55}.Debug|x64.ActiveCfg = Debug|x64 + {7E8046FD-4CB3-4BBC-8ADD-E27FE3DBBB55}.Debug|x64.Build.0 = Debug|x64 + {7E8046FD-4CB3-4BBC-8ADD-E27FE3DBBB55}.Release|x64.ActiveCfg = Release|x64 + {7E8046FD-4CB3-4BBC-8ADD-E27FE3DBBB55}.Release|x64.Build.0 = Release|x64 + {A1A986E0-E59D-4913-B63E-D965453B8CC0}.Debug|x64.ActiveCfg = Debug|x64 + {A1A986E0-E59D-4913-B63E-D965453B8CC0}.Debug|x64.Build.0 = Debug|x64 + {A1A986E0-E59D-4913-B63E-D965453B8CC0}.Release|x64.ActiveCfg = Release|x64 + {A1A986E0-E59D-4913-B63E-D965453B8CC0}.Release|x64.Build.0 = Release|x64 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/EOM.TSHotelManagement.Common/BackendApi/ApiConstants.cs b/EOM.TSHotelManagement.Common/BackendApi/ApiConstants.cs index 03ae1bf..ac3a2ab 100644 --- a/EOM.TSHotelManagement.Common/BackendApi/ApiConstants.cs +++ b/EOM.TSHotelManagement.Common/BackendApi/ApiConstants.cs @@ -2,6 +2,7 @@ { public static class ApiConstants { + public const string Default_Version = "version"; // Base URLs public const string Base_SelectNationAll = "Base/SelectNationAll"; public const string Base_SelectGenderTypeAll = "Base/SelectGenderTypeAll"; @@ -74,7 +75,7 @@ public const string Spend_UpdateSpendInfoByRoomNo = "Spend​/UpdateSpendInfoByRoomNo"; public const string Spend_AddCustomerSpend = "Spend​/AddCustomerSpend"; public const string Spend_SeletHistorySpendInfoAll = "Spend/SeletHistorySpendInfoAll"; - public const string Spend_UpdSpenInfo = "Spend/UpdSpenInfo"; + public const string Spend_UpdSpendInfo = "Spend/UpdSpendInfo"; public const string Spend_UndoCustomerSpend = "Spend/UndoCustomerSpend"; // EnergyManagement URLs diff --git a/EOM.TSHotelManagement.Common/EOM.TSHotelManagement.Common.csproj b/EOM.TSHotelManagement.Common/EOM.TSHotelManagement.Common.csproj index 8dd223e..640dd30 100644 --- a/EOM.TSHotelManagement.Common/EOM.TSHotelManagement.Common.csproj +++ b/EOM.TSHotelManagement.Common/EOM.TSHotelManagement.Common.csproj @@ -4,6 +4,7 @@ net8.0 enable enable + x64 diff --git a/EOM.TSHotelManagement.Common/Helper/HttpHelper.cs b/EOM.TSHotelManagement.Common/Helper/HttpHelper.cs index 3c334a5..104eb13 100644 --- a/EOM.TSHotelManagement.Common/Helper/HttpHelper.cs +++ b/EOM.TSHotelManagement.Common/Helper/HttpHelper.cs @@ -22,7 +22,7 @@ namespace EOM.TSHotelManagement.Common /// /// WebApi URL /// - public const string apiUrl = "https://tshotel-api.oscode.top/api/"; + public const string apiUrl = "https://tshotel.oscode.top/api/"; #endif public class IgnoreNullValuesConverter : JsonConverter diff --git a/EOM.TSHotelManagement.Common/LocalInfo/LoginInfo.cs b/EOM.TSHotelManagement.Common/LocalInfo/LoginInfo.cs index bd3a346..e4160e4 100644 --- a/EOM.TSHotelManagement.Common/LocalInfo/LoginInfo.cs +++ b/EOM.TSHotelManagement.Common/LocalInfo/LoginInfo.cs @@ -59,6 +59,11 @@ namespace EOM.TSHotelManagement.Common /// public static string UserToken = ""; + /// + /// 存储当前用户密码 + /// + public static string Password = ""; + /// /// 软件更新日志 /// diff --git a/EOM.TSHotelManagement.Common/Util/ApplicationUtil.cs b/EOM.TSHotelManagement.Common/Util/ApplicationUtil.cs index a296c1b..b0d326e 100644 --- a/EOM.TSHotelManagement.Common/Util/ApplicationUtil.cs +++ b/EOM.TSHotelManagement.Common/Util/ApplicationUtil.cs @@ -1,7 +1,9 @@ using EOM.TSHotelManagement.Common.Contract; +using EOM.TSHotelManagement.Common.Util; using jvncorelib.EntityLib; using System.Diagnostics; using System.Reflection; +using System.Runtime.InteropServices; namespace EOM.TSHotelManagement.Common { @@ -27,14 +29,14 @@ namespace EOM.TSHotelManagement.Common }; ResponseMsg result = HttpHelper.Request(ApiConstants.Utility_SelectCardCode, input.ModelToJson()); var response = HttpHelper.JsonToModel>(result.message); - if (response.StatusCode != StatusCodeConstants.Success) + if (response.Code != BusinessStatusCode.Success) { return new Card { message = "SelectCardCode+接口服务异常,请提交Issue或尝试更新版本!" }; } - if (!response.Source.IsNullOrEmpty()) + if (!response.Data.IsNullOrEmpty()) { - var address = $"{response.Source.Province}{response.Source.City}{response.Source.District}"; + var address = $"{response.Data.Province}{response.Data.City}{response.Data.District}"; var birthday = code.Substring(6, 4) + "-" + code.Substring(10, 2) + "-" + code.Substring(12, 2); var sex = code.Substring(14, 3); //性别代码为偶数是女性奇数为男性 @@ -77,6 +79,47 @@ namespace EOM.TSHotelManagement.Common return null; } + /// + /// 获取服务器版本号 + /// + /// + public static string GetServerVersion() + { + var response = HttpHelper.Request(ApiConstants.Default_Version); + if (response is ResponseMsg responseMsg) + { + return responseMsg.message!.Split(':').Last().Trim().ToString(); + } + return string.Empty; + } + + /// + /// 获取当前计算机的系统架构 + /// + /// + public static string GetSystemArchitectureViaEnv() + { + return RuntimeInformation.OSArchitecture.ToString(); + } + + /// + /// 获取当前应用框架版本 + /// + /// + public static string GetApplicationFrameworkVersion() + { + return Environment.Version.ToString(); + } + + /// + /// 获取当前软件的名称 + /// + /// + public static string GetApplicationName() + { + return LocalizationHelper.GetLocalizedString("TopSky Hotel Management System", "TS酒店管理系统"); + } + /// /// 身份证实体类 /// diff --git a/EOM.TSHotelManagement.FormUI/App.config b/EOM.TSHotelManagement.FormUI/App.config index 49cc43e..19a67ba 100644 --- a/EOM.TSHotelManagement.FormUI/App.config +++ b/EOM.TSHotelManagement.FormUI/App.config @@ -1,3 +1,15 @@  + + +
+ + + + + + + + + \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmAbout.Designer.cs b/EOM.TSHotelManagement.FormUI/AppFunction/FrmAbout.Designer.cs new file mode 100644 index 0000000..2cfdc1d --- /dev/null +++ b/EOM.TSHotelManagement.FormUI/AppFunction/FrmAbout.Designer.cs @@ -0,0 +1,212 @@ +namespace EOM.TSHotelManagement.FormUI +{ + partial class FrmAbout + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmAbout)); + btnClose = new AntdUI.Button(); + picLogo = new PictureBox(); + lblSoftName = new Label(); + lblServerVersion = new AntdUI.Label(); + lblClientVersion = new AntdUI.Label(); + lblServerVersionDescriotion = new AntdUI.Label(); + lblClientVersionDescriotion = new AntdUI.Label(); + lblCopyright = new AntdUI.Label(); + lblNotice = new AntdUI.Label(); + lblFrameworkVersion = new AntdUI.Label(); + lblFrameworkVersionDescription = new AntdUI.Label(); + ((System.ComponentModel.ISupportInitialize)picLogo).BeginInit(); + SuspendLayout(); + // + // btnClose + // + btnClose.BackColor = Color.Transparent; + btnClose.BackgroundImage = Properties.Resources.close; + btnClose.Font = new Font("Microsoft YaHei UI", 9F); + btnClose.Ghost = true; + btnClose.Location = new Point(348, 3); + btnClose.Name = "btnClose"; + btnClose.Size = new Size(41, 38); + btnClose.TabIndex = 42; + btnClose.Click += btnClose_Click; + // + // picLogo + // + picLogo.BackColor = Color.Transparent; + picLogo.BackgroundImage = (Image)resources.GetObject("picLogo.BackgroundImage"); + picLogo.BackgroundImageLayout = ImageLayout.Stretch; + picLogo.Cursor = Cursors.Hand; + picLogo.Location = new Point(113, 57); + picLogo.Margin = new Padding(4); + picLogo.Name = "picLogo"; + picLogo.Size = new Size(165, 111); + picLogo.TabIndex = 43; + picLogo.TabStop = false; + // + // lblSoftName + // + lblSoftName.BackColor = Color.Transparent; + lblSoftName.FlatStyle = FlatStyle.Flat; + lblSoftName.Font = new Font("Noto Sans SC", 14.9999981F, FontStyle.Regular, GraphicsUnit.Point, 0); + lblSoftName.Location = new Point(13, 195); + lblSoftName.Margin = new Padding(4, 0, 4, 0); + lblSoftName.Name = "lblSoftName"; + lblSoftName.Size = new Size(364, 36); + lblSoftName.TabIndex = 44; + lblSoftName.TextAlign = ContentAlignment.MiddleCenter; + // + // lblServerVersion + // + lblServerVersion.BackColor = Color.Transparent; + lblServerVersion.Font = new Font("Noto Sans SC", 9F); + lblServerVersion.Location = new Point(194, 287); + lblServerVersion.Name = "lblServerVersion"; + lblServerVersion.Size = new Size(103, 23); + lblServerVersion.TabIndex = 48; + lblServerVersion.Text = ""; + // + // lblClientVersion + // + lblClientVersion.BackColor = Color.Transparent; + lblClientVersion.Font = new Font("Noto Sans SC", 9F); + lblClientVersion.Location = new Point(194, 258); + lblClientVersion.Name = "lblClientVersion"; + lblClientVersion.Size = new Size(103, 23); + lblClientVersion.TabIndex = 47; + lblClientVersion.Text = ""; + // + // lblServerVersionDescriotion + // + lblServerVersionDescriotion.BackColor = Color.Transparent; + lblServerVersionDescriotion.Font = new Font("Noto Sans SC", 9F); + lblServerVersionDescriotion.Location = new Point(94, 287); + lblServerVersionDescriotion.Name = "lblServerVersionDescriotion"; + lblServerVersionDescriotion.Size = new Size(90, 23); + lblServerVersionDescriotion.TabIndex = 46; + lblServerVersionDescriotion.Text = ""; + lblServerVersionDescriotion.TextAlign = ContentAlignment.MiddleRight; + // + // lblClientVersionDescriotion + // + lblClientVersionDescriotion.BackColor = Color.Transparent; + lblClientVersionDescriotion.Font = new Font("Noto Sans SC", 9F); + lblClientVersionDescriotion.Location = new Point(94, 258); + lblClientVersionDescriotion.Name = "lblClientVersionDescriotion"; + lblClientVersionDescriotion.Size = new Size(90, 23); + lblClientVersionDescriotion.TabIndex = 45; + lblClientVersionDescriotion.Text = ""; + lblClientVersionDescriotion.TextAlign = ContentAlignment.MiddleRight; + // + // lblCopyright + // + lblCopyright.BackColor = Color.Transparent; + lblCopyright.Font = new Font("Noto Sans SC", 9F); + lblCopyright.Location = new Point(71, 346); + lblCopyright.Name = "lblCopyright"; + lblCopyright.Size = new Size(240, 23); + lblCopyright.TabIndex = 49; + lblCopyright.Text = ""; + lblCopyright.TextAlign = ContentAlignment.MiddleCenter; + // + // lblNotice + // + lblNotice.BackColor = Color.Transparent; + lblNotice.Font = new Font("Noto Sans SC", 9F); + lblNotice.Location = new Point(71, 375); + lblNotice.Name = "lblNotice"; + lblNotice.Size = new Size(240, 23); + lblNotice.TabIndex = 50; + lblNotice.Text = ""; + lblNotice.TextAlign = ContentAlignment.MiddleCenter; + // + // lblFrameworkVersion + // + lblFrameworkVersion.BackColor = Color.Transparent; + lblFrameworkVersion.Font = new Font("Noto Sans SC", 9F); + lblFrameworkVersion.Location = new Point(194, 316); + lblFrameworkVersion.Name = "lblFrameworkVersion"; + lblFrameworkVersion.Size = new Size(103, 23); + lblFrameworkVersion.TabIndex = 52; + lblFrameworkVersion.Text = ""; + // + // lblFrameworkVersionDescription + // + lblFrameworkVersionDescription.BackColor = Color.Transparent; + lblFrameworkVersionDescription.Font = new Font("Noto Sans SC", 9F); + lblFrameworkVersionDescription.Location = new Point(94, 316); + lblFrameworkVersionDescription.Name = "lblFrameworkVersionDescription"; + lblFrameworkVersionDescription.Size = new Size(90, 23); + lblFrameworkVersionDescription.TabIndex = 51; + lblFrameworkVersionDescription.Text = ""; + lblFrameworkVersionDescription.TextAlign = ContentAlignment.MiddleRight; + // + // FrmAbout + // + AutoScaleDimensions = new SizeF(7F, 17F); + AutoScaleMode = AutoScaleMode.Font; + BackColor = Color.FromArgb(235, 243, 255); + ClientSize = new Size(390, 476); + Controls.Add(lblFrameworkVersion); + Controls.Add(lblFrameworkVersionDescription); + Controls.Add(lblNotice); + Controls.Add(lblCopyright); + Controls.Add(lblServerVersion); + Controls.Add(lblClientVersion); + Controls.Add(lblServerVersionDescriotion); + Controls.Add(lblClientVersionDescriotion); + Controls.Add(lblSoftName); + Controls.Add(picLogo); + Controls.Add(btnClose); + FormBorderStyle = FormBorderStyle.FixedSingle; + Icon = (Icon)resources.GetObject("$this.Icon"); + Margin = new Padding(2); + Name = "FrmAbout"; + StartPosition = FormStartPosition.CenterScreen; + Text = "关于我们"; + Load += FrmAboutUs_Load; + MouseDown += FrmAboutUs_MouseDown; + MouseMove += FrmAboutUs_MouseMove; + ((System.ComponentModel.ISupportInitialize)picLogo).EndInit(); + ResumeLayout(false); + } + + #endregion + + private AntdUI.Button btnClose; + private PictureBox picLogo; + private Label lblSoftName; + private AntdUI.Label lblServerVersion; + private AntdUI.Label lblClientVersion; + private AntdUI.Label lblServerVersionDescriotion; + private AntdUI.Label lblClientVersionDescriotion; + private AntdUI.Label lblCopyright; + private AntdUI.Label lblNotice; + private AntdUI.Label lblFrameworkVersion; + private AntdUI.Label lblFrameworkVersionDescription; + } +} \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmAboutUs.cs b/EOM.TSHotelManagement.FormUI/AppFunction/FrmAbout.cs similarity index 63% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmAboutUs.cs rename to EOM.TSHotelManagement.FormUI/AppFunction/FrmAbout.cs index 356cf88..c5f8796 100644 --- a/EOM.TSHotelManagement.FormUI/AppFunction/FrmAboutUs.cs +++ b/EOM.TSHotelManagement.FormUI/AppFunction/FrmAbout.cs @@ -22,13 +22,14 @@ * */ using AntdUI; +using EOM.TSHotelManagement.Common; using EOM.TSHotelManagement.Common.Util; namespace EOM.TSHotelManagement.FormUI { - public partial class FrmAboutUs : Window + public partial class FrmAbout : Window { - public FrmAboutUs() + public FrmAbout() { InitializeComponent(); } @@ -61,11 +62,23 @@ namespace EOM.TSHotelManagement.FormUI private void FrmAboutUs_Load(object sender, EventArgs e) { - rtbAboutUs.Text = LocalizationHelper.GetLocalizedString("Our team has always been committed to creating a user-friendly and easy-to-use management software. Our vision is to use technology to create easy-to-use open source software/components and to create software with a vision in mind. Our team is full of vitality and passion!\r\n Regarding our team, you can browse: https://www.oscode.top Learn more! \r\n For detailed information about this software, you can browse: https://gitee.com/java-and-net/TopskyHotelManagerSystem Learn more! In addition, we will still provide support for future version upgrades!", - " 我们团队一直都致力于打造一款人机交互方便,操作简单的管理软件,我们的愿景是“用技术创造易用的开源软件/组件”,一路心怀愿景去制作软件,我们的团队充满活力、激情!\r\n 关于我们团队,您可以浏览:https://www.oscode.top了解更多! \r\n 关于本软件的详细信息,您可以浏览:https://gitee.com/java-and-net/TopskyHotelManagerSystem 了解更多!另外仍会提供后续的版本升级支持!"); + GetAboutInfo(); } - private void btnOk_Click(object sender, EventArgs e) + private void GetAboutInfo() + { + lblSoftName.Text = $"{ApplicationUtil.GetApplicationName()}"; + lblClientVersionDescriotion.Text = LocalizationHelper.GetLocalizedString("Client Version:", "客户端版本:"); + lblClientVersion.Text = $"{ApplicationUtil.GetApplicationVersion()}({ApplicationUtil.GetSystemArchitectureViaEnv()})"; + lblServerVersionDescriotion.Text = LocalizationHelper.GetLocalizedString("Server Version:", "服务端版本:"); + lblServerVersion.Text = $"{ApplicationUtil.GetServerVersion()}"; + lblFrameworkVersionDescription.Text = LocalizationHelper.GetLocalizedString("Framework Version:", "框架版本:"); + lblFrameworkVersion.Text = $"{ApplicationUtil.GetApplicationFrameworkVersion()}"; + lblCopyright.Text = $"{LocalizationHelper.GetLocalizedString("Copyright", "版权所有")} © 2021-{DateTime.Now.Year} 易开元(EOM). "; + lblNotice.Text = $"{LocalizationHelper.GetLocalizedString("All rights reserved", "保留所有权利")}."; + } + + private void btnClose_Click(object sender, EventArgs e) { this.Close(); } diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmAbout.resx b/EOM.TSHotelManagement.FormUI/AppFunction/FrmAbout.resx new file mode 100644 index 0000000..716ace1 --- /dev/null +++ b/EOM.TSHotelManagement.FormUI/AppFunction/FrmAbout.resx @@ -0,0 +1,567 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + 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 + AABJRU5ErkJggg== + + + \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmChangeRoom.cs b/EOM.TSHotelManagement.FormUI/AppFunction/FrmChangeRoom.cs index 8276769..a9e3b76 100644 --- a/EOM.TSHotelManagement.FormUI/AppFunction/FrmChangeRoom.cs +++ b/EOM.TSHotelManagement.FormUI/AppFunction/FrmChangeRoom.cs @@ -43,12 +43,12 @@ namespace EOM.TSHotelManagement.FormUI { result = HttpHelper.Request(ApiConstants.Room_SelectCanUseRoomAll); var datas = HttpHelper.JsonToModel>(result.message); - if (datas.StatusCode != StatusCodeConstants.Success) + if (datas.Success) { UIMessageBox.ShowError($"{ApiConstants.Room_SelectCanUseRoomAll}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - cboRoomList.DataSource = datas.listSource; + cboRoomList.DataSource = datas.Data.Items; cboRoomList.DisplayMember = nameof(ReadRoomOutputDto.RoomNumber); cboRoomList.ValueMember = nameof(ReadRoomOutputDto.RoomNumber); } @@ -71,8 +71,8 @@ namespace EOM.TSHotelManagement.FormUI DataChgDate = Convert.ToDateTime(DateTime.Now) }; result = HttpHelper.Request(ApiConstants.Room_TransferRoom, HttpHelper.ModelToJson(transferRoom)); - var response = HttpHelper.JsonToModel(result.message!); - if (response.StatusCode != StatusCodeConstants.Success) + var response = HttpHelper.JsonToModel(result.message!); + if (response.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Room_TransferRoom}+接口服务异常,请提交Issue或尝试更新版本!"); return; @@ -109,12 +109,12 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.RoomType_SelectRoomTypeByRoomNo, dic); var data = HttpHelper.JsonToModel>(result.message); - if (data.StatusCode != StatusCodeConstants.Success) + if (data.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.RoomType_SelectRoomTypeByRoomNo}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - var roomType = data.Source; + var roomType = data.Data; lblRoomType.Text = roomType.RoomTypeName; } } diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmCheckIn.cs b/EOM.TSHotelManagement.FormUI/AppFunction/FrmCheckIn.cs index 86df5cf..e2102fc 100644 --- a/EOM.TSHotelManagement.FormUI/AppFunction/FrmCheckIn.cs +++ b/EOM.TSHotelManagement.FormUI/AppFunction/FrmCheckIn.cs @@ -50,20 +50,20 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Room_SelectRoomByRoomNo, pairs); var response = HttpHelper.JsonToModel>(result.message!); - if (response.StatusCode != StatusCodeConstants.Success) + if (response.Code != BusinessStatusCode.Success) { UIMessageTip.ShowError($"{ApiConstants.Room_SelectRoomByRoomNo}+接口服务异常,请提交issue"); return; } - ReadRoomOutputDto r = response.Source; + ReadRoomOutputDto r = response.Data; result = HttpHelper.Request(ApiConstants.RoomType_SelectRoomTypeByRoomNo, pairs); var roomTypeResponse = HttpHelper.JsonToModel>(result.message!); - if (roomTypeResponse.StatusCode != StatusCodeConstants.Success) + if (roomTypeResponse.Code != BusinessStatusCode.Success) { UIMessageTip.ShowError($"{ApiConstants.RoomType_SelectRoomTypeByRoomNo}+接口服务异常,请提交issue"); return; } - ReadRoomTypeOutputDto t = roomTypeResponse.Source; + ReadRoomTypeOutputDto t = roomTypeResponse.Data; txtType.Text = t.RoomTypeName; txtMoney.Text = r.RoomRent.ToString(); txtRoomPosition.Text = r.RoomLocation; @@ -76,12 +76,12 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Customer_SelectCustomers, pairs); var customerResponse = HttpHelper.JsonToModel>(result.message!); - if (customerResponse.StatusCode != StatusCodeConstants.Success) + if (customerResponse.Code != BusinessStatusCode.Success) { UIMessageTip.ShowError($"{ApiConstants.Customer_SelectCustomers}+接口服务异常,请提交issue"); return; } - var custoList = customerResponse.listSource; + var custoList = customerResponse.Data.Items; if (custoList != null && custoList != null) { var ctos = custoList.Select(custo => custo.CustomerNumber).ToArray(); @@ -119,12 +119,12 @@ namespace EOM.TSHotelManagement.FormUI }; var result = HttpHelper.Request(ApiConstants.VipLevelRule_SelectVipRuleList, dic); var response = HttpHelper.JsonToModel>(result.message!); - if (response.StatusCode != StatusCodeConstants.Success) + if (response.Code != BusinessStatusCode.Success) { UIMessageTip.ShowError($"{ApiConstants.VipLevelRule_SelectVipRuleList}+接口服务异常,请提交issue: {response.Message}", 3000); } - var listVipRule = response.listSource + var listVipRule = response.Data.Items .OrderBy(a => a.RuleValue) .Distinct() .ToList(); @@ -133,12 +133,12 @@ namespace EOM.TSHotelManagement.FormUI var user = new Dictionary { { nameof(ReadSpendInputDto.CustomerNumber), txtCustoNo.Text.Trim() } }; result = HttpHelper.Request(ApiConstants.Spend_SeletHistorySpendInfoAll, user); var customerSpends = HttpHelper.JsonToModel>(result.message!); - if (customerSpends.StatusCode != StatusCodeConstants.Success) + if (customerSpends.Code != BusinessStatusCode.Success) { UIMessageTip.ShowError($"{ApiConstants.Spend_SeletHistorySpendInfoAll}+接口服务异常,请提交issue: {response.Message}", 3000); } - var listCustoSpend = customerSpends.listSource; + var listCustoSpend = customerSpends.Data.Items; if (!listCustoSpend.IsNullOrEmpty()) { var spendAmount = listCustoSpend.Sum(a => a.ConsumptionAmount); @@ -152,8 +152,8 @@ namespace EOM.TSHotelManagement.FormUI if (new_type != 0) { result = HttpHelper.Request(ApiConstants.Customer_UpdCustomerTypeByCustoNo, HttpHelper.ModelToJson(new UpdateCustomerInputDto { CustomerNumber = txtCustoNo.Text.Trim(), CustomerType = new_type })); - var updateResponse = HttpHelper.JsonToModel(result.message!); - if (updateResponse.StatusCode != StatusCodeConstants.Success) + var updateResponse = HttpHelper.JsonToModel(result.message!); + if (updateResponse.Code != BusinessStatusCode.Success) { throw new Exception($"{ApiConstants.Customer_UpdCustomerTypeByCustoNo}+接口服务异常"); } @@ -166,12 +166,12 @@ namespace EOM.TSHotelManagement.FormUI user = new Dictionary { { nameof(ReadCustomerInputDto.CustomerNumber), txtCustoNo.Text.Trim() } }; result = HttpHelper.Request(ApiConstants.Customer_SelectCustoByInfo, user); var customerResponse = HttpHelper.JsonToModel>(result.message!); - if (customerResponse.StatusCode != StatusCodeConstants.Success) + if (customerResponse.Code != BusinessStatusCode.Success) { throw new Exception($"{ApiConstants.Customer_SelectCustoByInfo}+接口服务异常"); } - var custo = customerResponse.Source; + var custo = customerResponse.Data; txtCustoName.Text = custo?.CustomerNumber ?? ""; txtCustoTel.Text = custo?.CustomerPhoneNumber ?? ""; txtCustoType.Text = custo?.CustomerTypeName ?? ""; @@ -183,12 +183,12 @@ namespace EOM.TSHotelManagement.FormUI var user = new Dictionary { { nameof(ReadCustomerInputDto.CustomerNumber), txtCustoNo.Text.Trim() } }; result = HttpHelper.Request(ApiConstants.Customer_SelectCustoByInfo, user); var customerResponse = HttpHelper.JsonToModel>(result.message!); - if (customerResponse.StatusCode != StatusCodeConstants.Success) + if (customerResponse.Code != BusinessStatusCode.Success) { throw new Exception($"{ApiConstants.Customer_SelectCustoByInfo}+接口服务异常"); } - var custo = customerResponse.Source; + var custo = customerResponse.Data; if (!custo.IsNullOrEmpty()) { using (TransactionScope scope = new TransactionScope()) @@ -202,8 +202,8 @@ namespace EOM.TSHotelManagement.FormUI DataChgUsr = LoginInfo.WorkerNo }; result = HttpHelper.Request(ApiConstants.Room_UpdateRoomInfo, HttpHelper.ModelToJson(r)); - var response = HttpHelper.JsonToModel(result.message!); - if (response.StatusCode != StatusCodeConstants.Success) + var response = HttpHelper.JsonToModel(result.message!); + if (response.Code != BusinessStatusCode.Success) { UIMessageTip.ShowError($"{ApiConstants.Room_UpdateRoomInfo}+接口服务异常,请提交issue"); UIMessageBox.Show("登记入住失败!", "登记提示", UIStyle.Red); diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmCheckOutForm.cs b/EOM.TSHotelManagement.FormUI/AppFunction/FrmCheckOutForm.cs index 656bd32..919d9eb 100644 --- a/EOM.TSHotelManagement.FormUI/AppFunction/FrmCheckOutForm.cs +++ b/EOM.TSHotelManagement.FormUI/AppFunction/FrmCheckOutForm.cs @@ -85,12 +85,12 @@ namespace EOM.TSHotelManagement.FormUI #region 加载客户类型信息 result = HttpHelper.Request(ApiConstants.Base_SelectCustoTypeAllCanUse); var customerTypes = HttpHelper.JsonToModel>(result.message); - if (customerTypes.StatusCode != StatusCodeConstants.Success) + if (customerTypes.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError("SelectCustoTypeAllCanUse+接口服务异常,请提交Issue或尝试更新版本!"); return; } - List lstSourceGrid = customerTypes.listSource; + List lstDataGrid = customerTypes.Data.Items; #endregion decimal sum = 0; @@ -105,13 +105,13 @@ namespace EOM.TSHotelManagement.FormUI result = HttpHelper.Request(ApiConstants.Room_SelectRoomByRoomNo, dic); var roomInfo = HttpHelper.JsonToModel>(result.message); - if (roomInfo.StatusCode != StatusCodeConstants.Success) + if (roomInfo.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError("SelectRoomByRoomNo+接口服务异常,请提交Issue或尝试更新版本!"); return; } - ReadRoomOutputDto room = roomInfo.Source; + ReadRoomOutputDto room = roomInfo.Data; if (room.LastCheckInTime == null) { @@ -127,20 +127,20 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Room_DayByRoomNo, dic); var stayDays = HttpHelper.JsonToModel>(result.message); - if (stayDays.StatusCode != 200) + if (stayDays.Code != 200) { UIMessageBox.ShowError("DayByRoomNo+接口服务异常,请提交Issue或尝试更新版本!"); return; } - sum = Convert.ToDecimal(Convert.ToString(Convert.ToInt32(stayDays.Source.StayDays) * room.RoomRent)); + sum = Convert.ToDecimal(Convert.ToString(Convert.ToInt32(stayDays.Data.StayDays) * room.RoomRent)); - lblDay.Text = Convert.ToString(Convert.ToInt32(stayDays.Source.StayDays)); + lblDay.Text = Convert.ToString(Convert.ToInt32(stayDays.Data.StayDays)); w = new CreateEnergyManagementInputDto() { - PowerUsage = Convert.ToDecimal(Convert.ToInt32(stayDays.Source.StayDays) * 3 * 1), - WaterUsage = Convert.ToDecimal(Convert.ToDouble(stayDays.Source.StayDays) * 80 * 0.002) + PowerUsage = Convert.ToDecimal(Convert.ToInt32(stayDays.Data.StayDays) * 3 * 1), + WaterUsage = Convert.ToDecimal(Convert.ToDouble(stayDays.Data.StayDays) * 80 * 0.002) }; #region 加载客户信息 @@ -150,22 +150,22 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Customer_SelectCustoByInfo, dic); SingleOutputDto customer = HttpHelper.JsonToModel>(result.message); - if (customer?.StatusCode != StatusCodeConstants.Success) + if (customer?.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError("SelectCustoByInfo+接口服务异常,请提交Issue或尝试更新版本!"); return; } try { - CustoName.Text = customer?.Source.CustomerName; - txtCustomerName.Text = customer?.Source.CustomerName; - txtTel.Text = customer?.Source.CustomerPhoneNumber; - txtCustomerGender.Text = customer?.Source.GenderName ?? string.Empty; - txtCustomerType.Text = customer.Source.CustomerTypeName; - txtPassportName.Text = customer.Source.PassportName; - txtDateOfBirth.Text = customer.Source.DateOfBirth.ToString("yyyy/MM/dd"); - txtIdCardNumber.Text = customer.Source.IdCardNumber; - txtCustomerAddress.Text = customer.Source.CustomerAddress; + CustoName.Text = customer?.Data.CustomerName; + txtCustomerName.Text = customer?.Data.CustomerName; + txtTel.Text = customer?.Data.CustomerPhoneNumber; + txtCustomerGender.Text = customer?.Data.GenderName ?? string.Empty; + txtCustomerType.Text = customer.Data.CustomerTypeName; + txtPassportName.Text = customer.Data.PassportName; + txtDateOfBirth.Text = customer.Data.DateOfBirth.ToString("yyyy/MM/dd"); + txtIdCardNumber.Text = customer.Data.IdCardNumber; + txtCustomerAddress.Text = customer.Data.CustomerAddress; } catch { @@ -207,7 +207,7 @@ namespace EOM.TSHotelManagement.FormUI }); #endregion - var customerType = lstSourceGrid.SingleOrDefault(a => a.CustomerTypeName == txtCustomerType.Text); + var customerType = lstDataGrid.SingleOrDefault(a => a.CustomerTypeName == txtCustomerType.Text); //计算消费总额 dic = new Dictionary() @@ -217,19 +217,19 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Spend_SumConsumptionAmount, dic); var response = HttpHelper.JsonToModel>(result.message); - if (response.StatusCode != StatusCodeConstants.Success) + if (response.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Spend_SumConsumptionAmount}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - decimal total = response.Source.ConsumptionAmount; + decimal total = response.Data.ConsumptionAmount; decimal m = total + sum; decimal discount = (customerType != null && customerType.Discount > 0 && customerType.Discount < 100) ? customerType.Discount / 100M : 1M; lblGetReceipts.Text = m.ToString("#,##0.00"); lblVIPPrice.Text = (m * discount).ToString("#,##0.00"); - lblVIP.Text = (discount < 1M) ? DiscountConverter.ToZheString(customerType.Discount) : "无折扣(100%)"; + lblVIP.Text = (discount < 1M) ? DiscountHelper.ToZheString(customerType.Discount) : "无折扣(100%)"; Refresh(); } #endregion @@ -276,8 +276,8 @@ namespace EOM.TSHotelManagement.FormUI ElectricityUsage = w.PowerUsage, WaterUsage = w.WaterUsage })); - var response = HttpHelper.JsonToModel(result.message); - if (response.StatusCode != StatusCodeConstants.Success) + var response = HttpHelper.JsonToModel(result.message); + if (response.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Room_CheckoutRoom}+接口服务异常,请提交Issue或尝试更新版本!"); return; @@ -327,21 +327,21 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Spend_SelectSpendByRoomNo, dic); var spendInfo = HttpHelper.JsonToModel>(result.message); - if (spendInfo.StatusCode != StatusCodeConstants.Success) + if (spendInfo.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Spend_SelectSpendByRoomNo}+接口服务异常,请提交Issue或尝试更新版本!"); } - List spends = spendInfo.listSource; - totalCount = spendInfo.total; - var listTableSource = new List(); + List spends = spendInfo.Data.Items; + totalCount = spendInfo.Data.TotalCount; + var listTableData = new List(); spends = spends.OrderBy(a => a.SpendNumber).ToList(); TableComHelper tableComHelper = new TableComHelper(); - listTableSource = tableComHelper.ConvertToAntdItems(spends); + listTableData = tableComHelper.ConvertToAntdItems(spends); - return listTableSource; + return listTableData; } object GetEnergyPageData() @@ -352,20 +352,20 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.EnergyManagement_SelectEnergyManagementInfo, dic); var energyManagements = HttpHelper.JsonToModel>(result.message); - if (energyManagements.StatusCode != StatusCodeConstants.Success) + if (energyManagements.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.EnergyManagement_SelectEnergyManagementInfo}+接口服务异常,请提交Issue或尝试更新版本!"); } - List energys = energyManagements.listSource; - var listTableSource = new List(); + List energys = energyManagements.Data.Items; + var listTableData = new List(); energys = energys.OrderByDescending(a => a.StartDate).ToList(); TableComHelper tableComHelper = new TableComHelper(); - listTableSource = tableComHelper.ConvertToAntdItems(energys); + listTableData = tableComHelper.ConvertToAntdItems(energys); - return listTableSource; + return listTableData; } diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmCustomerManagement.cs b/EOM.TSHotelManagement.FormUI/AppFunction/FrmCustomerManagement.cs index 7d6c859..f74d16f 100644 --- a/EOM.TSHotelManagement.FormUI/AppFunction/FrmCustomerManagement.cs +++ b/EOM.TSHotelManagement.FormUI/AppFunction/FrmCustomerManagement.cs @@ -101,21 +101,21 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Customer_SelectCustomers, dic); var customers = HttpHelper.JsonToModel>(result.message); - if (customers.StatusCode != StatusCodeConstants.Success) + if (customers.Code != BusinessStatusCode.Success) { AntdUI.Message.error(this, "SelectCustomers+接口服务异常,请提交Issue或尝试更新版本!"); return null!; } - List custos = customers.listSource; - totalCount = customers.total; - var listTableSource = new List(); + List custos = customers.Data.Items; + totalCount = customers.Data.TotalCount; + var listTableData = new List(); custos = custos.OrderBy(a => a.CustomerNumber).ThenBy(a => a.CustomerName).ToList(); TableComHelper tableComHelper = new TableComHelper(); - listTableSource = tableComHelper.ConvertToAntdItems(custos); + listTableData = tableComHelper.ConvertToAntdItems(custos); - return listTableSource; + return listTableData; } #endregion @@ -141,23 +141,23 @@ namespace EOM.TSHotelManagement.FormUI } result = HttpHelper.Request(ApiConstants.Customer_SelectCustomers, dic); response = HttpHelper.JsonToModel>(result.message); - if (response.StatusCode != StatusCodeConstants.Success) + if (response.Code != BusinessStatusCode.Success) { AntdUI.Message.error(this, $"{ApiConstants.Customer_SelectCustomers}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - custos = response.listSource; - var totalCount = response.total; - var listTableSource = new List(); + custos = response.Data.Items; + var totalCount = response.Data.TotalCount; + var listTableData = new List(); custos = custos.OrderBy(a => a.CustomerNumber).ThenBy(a => a.CustomerName).ToList(); TableComHelper tableComHelper = new TableComHelper(); - listTableSource = tableComHelper.ConvertToAntdItems(custos); + listTableData = tableComHelper.ConvertToAntdItems(custos); dgvCustomerList.Columns = tableComHelper.ConvertToAntdColumns(tableComHelper.GenerateDataColumns()); - dgvCustomerList.DataSource = listTableSource; + dgvCustomerList.DataSource = listTableData; } private void btnAddCusto_BtnClick(object sender, EventArgs e) diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmEditInputs.cs b/EOM.TSHotelManagement.FormUI/AppFunction/FrmEditInputs.cs index 7d104ad..8e5c0ef 100644 --- a/EOM.TSHotelManagement.FormUI/AppFunction/FrmEditInputs.cs +++ b/EOM.TSHotelManagement.FormUI/AppFunction/FrmEditInputs.cs @@ -49,13 +49,13 @@ namespace EOM.TSHotelManagement.FormUI #region 加载客户类型信息 var result = HttpHelper.Request(ApiConstants.Base_SelectCustoTypeAllCanUse); var customerTypes = HttpHelper.JsonToModel>(result.message); - if (customerTypes.StatusCode != StatusCodeConstants.Success) + if (customerTypes.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Base_SelectCustoTypeAllCanUse}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - var lstSourceGrid = customerTypes.listSource; - this.cbCustoType.DataSource = lstSourceGrid; + var lstDataGrid = customerTypes.Data.Items; + this.cbCustoType.DataSource = lstDataGrid; this.cbCustoType.DisplayMember = nameof(ReadCustoTypeOutputDto.CustomerTypeName); this.cbCustoType.ValueMember = nameof(ReadCustoTypeOutputDto.CustomerType); this.cbCustoType.SelectedIndex = 0; @@ -65,12 +65,12 @@ namespace EOM.TSHotelManagement.FormUI #region 加载证件类型信息 result = HttpHelper.Request(ApiConstants.Base_SelectPassPortTypeAllCanUse); var passportTypes = HttpHelper.JsonToModel>(result.message); - if (passportTypes.StatusCode != StatusCodeConstants.Success) + if (passportTypes.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Base_SelectPassPortTypeAllCanUse}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - var passPorts = passportTypes.listSource; + var passPorts = passportTypes.Data.Items; this.cbPassportType.DataSource = passPorts; this.cbPassportType.DisplayMember = nameof(ReadPassportTypeOutputDto.PassportName); this.cbPassportType.ValueMember = nameof(ReadPassportTypeOutputDto.PassportId); @@ -85,12 +85,12 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Base_SelectGenderTypeAll, dic); var genderTypes = HttpHelper.JsonToModel>(result.message); - if (genderTypes.StatusCode != StatusCodeConstants.Success) + if (genderTypes.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Base_SelectGenderTypeAll}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - var listSexType = genderTypes.listSource; + var listSexType = genderTypes.Data.Items; this.cbSex.DataSource = listSexType; this.cbSex.DisplayMember = nameof(ReadGenderTypeOutputDto.Description); this.cbSex.ValueMember = nameof(ReadGenderTypeOutputDto.Id); @@ -143,8 +143,8 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Customer_UpdCustomerInfo, HttpHelper.ModelToJson(custo)); - var response = HttpHelper.JsonToModel(result.message); - if (response.StatusCode != StatusCodeConstants.Success) + var response = HttpHelper.JsonToModel(result.message); + if (response.Code != BusinessStatusCode.Success) { UIMessageBox.Show("修改失败", "系统提示", UIStyle.Red, UIMessageBoxButtons.OK); return; @@ -191,8 +191,8 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Customer_InsertCustomerInfo, HttpHelper.ModelToJson(custo)); - var response = HttpHelper.JsonToModel(result.message); - if (response.StatusCode != StatusCodeConstants.Success) + var response = HttpHelper.JsonToModel(result.message); + if (response.Code != BusinessStatusCode.Success) { UIMessageBox.Show($"添加失败\n{response.Message}", "系统提示", UIStyle.Red, UIMessageBoxButtons.OK); return; diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmMySpace.cs b/EOM.TSHotelManagement.FormUI/AppFunction/FrmMySpace.cs index d71c19d..293ea2e 100644 --- a/EOM.TSHotelManagement.FormUI/AppFunction/FrmMySpace.cs +++ b/EOM.TSHotelManagement.FormUI/AppFunction/FrmMySpace.cs @@ -51,12 +51,12 @@ namespace EOM.TSHotelManagement.FormUI }; var result = HttpHelper.Request(ApiConstants.Base_SelectNationAll, dic); var nations = HttpHelper.JsonToModel>(result.message); - if (nations.StatusCode != StatusCodeConstants.Success) + if (nations.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Base_SelectNationAll}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - cbWorkerNation.DataSource = nations.listSource; + cbWorkerNation.DataSource = nations.Data.Items; cbWorkerNation.DisplayMember = nameof(ReadNationOutputDto.NationName); cbWorkerNation.ValueMember = nameof(ReadNationOutputDto.NationNumber); //加载性别信息 @@ -67,23 +67,23 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Base_SelectGenderTypeAll, dic); var genderTypes = HttpHelper.JsonToModel>(result.message); - if (genderTypes.StatusCode != StatusCodeConstants.Success) + if (genderTypes.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Base_SelectGenderTypeAll}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - cboSex.DataSource = genderTypes.listSource; + cboSex.DataSource = genderTypes.Data.Items; cboSex.DisplayMember = nameof(ReadGenderTypeOutputDto.Description); cboSex.ValueMember = nameof(ReadGenderTypeOutputDto.Id); //加载部门信息 result = HttpHelper.Request(ApiConstants.Base_SelectDeptAllCanUse); var depts = HttpHelper.JsonToModel>(result.message); - if (depts.StatusCode != StatusCodeConstants.Success) + if (depts.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Base_SelectDeptAllCanUse}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - cboWorkerClub.DataSource = depts.listSource; + cboWorkerClub.DataSource = depts.Data.Items; cboWorkerClub.DisplayMember = nameof(ReadDepartmentOutputDto.DepartmentName); cboWorkerClub.ValueMember = nameof(ReadDepartmentOutputDto.DepartmentNumber); //加载职位信息 @@ -94,12 +94,12 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Base_SelectPositionAll, dic); var positions = HttpHelper.JsonToModel>(result.message); - if (positions.StatusCode != StatusCodeConstants.Success) + if (positions.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Base_SelectPositionAll}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - cboWorkerPosition.DataSource = positions.listSource; + cboWorkerPosition.DataSource = positions.Data.Items; cboWorkerPosition.DisplayMember = nameof(ReadPositionOutputDto.PositionName); cboWorkerPosition.ValueMember = nameof(ReadPositionOutputDto.PositionNumber); @@ -118,12 +118,12 @@ namespace EOM.TSHotelManagement.FormUI }; var result = HttpHelper.Request(ApiConstants.Employee_SelectEmployeeInfoByEmployeeId, dic); var employees = HttpHelper.JsonToModel>(result.message); - if (employees.StatusCode != StatusCodeConstants.Success) + if (employees.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Employee_SelectEmployeeInfoByEmployeeId}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - ReadEmployeeOutputDto worker = employees.Source; + ReadEmployeeOutputDto worker = employees.Data; if (!worker.IsNullOrEmpty()) { txtWorkerNo.Text = worker.EmployeeId; @@ -144,16 +144,16 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.EmployeePhoto_EmployeePhoto, dic); var workerPic = HttpHelper.JsonToModel>(result.message); - if (workerPic.StatusCode != StatusCodeConstants.Success) + if (workerPic.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.EmployeePhoto_EmployeePhoto}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - var workerPicSource = workerPic.Source; - if (workerPicSource != null && !string.IsNullOrEmpty(workerPicSource.PhotoPath)) + var workerPicData = workerPic.Data; + if (workerPicData != null && !string.IsNullOrEmpty(workerPicData.PhotoPath)) { picWorkerPic.BackgroundImage = null; - if (!string.IsNullOrEmpty(workerPicSource.PhotoPath)) picWorkerPic.Load(workerPicSource.PhotoPath); + if (!string.IsNullOrEmpty(workerPicData.PhotoPath)) picWorkerPic.Load(workerPicData.PhotoPath); } } @@ -203,8 +203,8 @@ namespace EOM.TSHotelManagement.FormUI if (CheckInput(worker)) { result = HttpHelper.Request(ApiConstants.Employee_UpdateEmployee, HttpHelper.ModelToJson(worker)); - var response = HttpHelper.JsonToModel(result.message); - if (response.StatusCode != StatusCodeConstants.Success) + var response = HttpHelper.JsonToModel(result.message); + if (response.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Employee_UpdateEmployee}+接口服务异常,请提交Issue或尝试更新版本!"); return; @@ -235,17 +235,17 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.EmployeePhoto_EmployeePhoto, dic); var workerPic = HttpHelper.JsonToModel>(result.message); - if (workerPic.StatusCode != StatusCodeConstants.Success) + if (workerPic.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.EmployeePhoto_EmployeePhoto}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - var workerPicSource = workerPic.Source; - if (!workerPicSource.IsNullOrEmpty() && !string.IsNullOrEmpty(workerPicSource.PhotoPath)) + var workerPicData = workerPic.Data; + if (!workerPicData.IsNullOrEmpty() && !string.IsNullOrEmpty(workerPicData.PhotoPath)) { result = HttpHelper.Request(ApiConstants.EmployeePhoto_DeleteWorkerPhoto, HttpHelper.ModelToJson(workerPic)); - var response = HttpHelper.JsonToModel(result.message); - if (response.StatusCode != StatusCodeConstants.Success) + var response = HttpHelper.JsonToModel(result.message); + if (response.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.EmployeePhoto_DeleteWorkerPhoto}+接口服务异常,请提交Issue或尝试更新版本!"); return; @@ -273,13 +273,13 @@ namespace EOM.TSHotelManagement.FormUI }; var requestResult = HttpHelper.UploadFile(ApiConstants.EmployeePhoto_InsertWorkerPhoto, openPic.FileName, additionalParams); var response = HttpHelper.JsonToModel>(requestResult.message); - if (response.StatusCode != StatusCodeConstants.Success) + if (response.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{response.Message}:{ApiConstants.EmployeePhoto_InsertWorkerPhoto}+接口服务异常,请提交Issue或尝试更新版本!"); return; } UIMessageTip.ShowOk("头像上传成功!稍等将会加载头像哦.."); - picWorkerPic.Load(response.Source.PhotoPath); + picWorkerPic.Load(response.Data.PhotoPath); } private void btnUpdatePassword_Click(object sender, EventArgs e) @@ -298,8 +298,8 @@ namespace EOM.TSHotelManagement.FormUI DataChgDate = DateTime.Now, DataChgUsr = LoginInfo.WorkerNo })); - var response = HttpHelper.JsonToModel(request.message); - if (response.StatusCode != StatusCodeConstants.Success) + var response = HttpHelper.JsonToModel(request.message); + if (response.Code != BusinessStatusCode.Success) { AntdUI.Modal.open(this, LocalizationHelper.GetLocalizedString("System prompt", "系统提示"), LocalizationHelper.GetLocalizedString($"{ApiConstants.Employee_UpdateEmployeeAccountPassword}+Interface service exception, please submit an issue or try updating the version!", $"{ApiConstants.Employee_UpdateEmployeeAccountPassword}+接口服务异常,请提交Issue或尝试更新版本!")); return; diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmReserList.cs b/EOM.TSHotelManagement.FormUI/AppFunction/FrmReserList.cs index 5891c70..1b4dc54 100644 --- a/EOM.TSHotelManagement.FormUI/AppFunction/FrmReserList.cs +++ b/EOM.TSHotelManagement.FormUI/AppFunction/FrmReserList.cs @@ -71,21 +71,21 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Reser_SelectReserAll, dic); var resers = HttpHelper.JsonToModel>(result.message); - if (resers.StatusCode != StatusCodeConstants.Success) + if (resers.Code != BusinessStatusCode.Success) { AntdUI.Message.error(this, $"{ApiConstants.Reser_SelectReserAll}+接口服务异常,请提交Issue或尝试更新版本!"); return null!; } - List reserDataSource = resers.listSource; - totalCount = resers.total; - var listTableSource = new List(); + List reserDataSource = resers.Data.Items; + totalCount = resers.Data.TotalCount; + var listTableData = new List(); reserDataSource = reserDataSource.OrderBy(a => a.ReservationId).ThenBy(a => a.CustomerName).ToList(); TableComHelper tableComHelper = new TableComHelper(); - listTableSource = tableComHelper.ConvertToAntdItems(reserDataSource); + listTableData = tableComHelper.ConvertToAntdItems(reserDataSource); - return listTableSource; + return listTableData; } private string btnPg_ShowTotalChanged(object sender, AntdUI.PagePageEventArgs e) @@ -113,13 +113,13 @@ namespace EOM.TSHotelManagement.FormUI #region 加载客户类型信息 result = HttpHelper.Request(ApiConstants.Base_SelectCustoTypeAllCanUse); var customerTypeDataSource = HttpHelper.JsonToModel>(result.message); - if (customerTypeDataSource.StatusCode != StatusCodeConstants.Success) + if (customerTypeDataSource.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Base_SelectCustoTypeAllCanUse}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - List lstSourceGrid = customerTypeDataSource.listSource; - this.cbCustoType.DataSource = lstSourceGrid; + List lstDataGrid = customerTypeDataSource.Data.Items; + this.cbCustoType.DataSource = lstDataGrid; this.cbCustoType.DisplayMember = nameof(ReadCustoTypeOutputDto.CustomerTypeName); this.cbCustoType.ValueMember = nameof(ReadCustoTypeOutputDto.CustomerType); this.cbCustoType.SelectedIndex = 0; @@ -129,12 +129,12 @@ namespace EOM.TSHotelManagement.FormUI #region 加载证件类型信息 result = HttpHelper.Request(ApiConstants.Base_SelectPassPortTypeAllCanUse); var passportDataSource = HttpHelper.JsonToModel>(result.message); - if (passportDataSource.StatusCode != StatusCodeConstants.Success) + if (passportDataSource.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Base_SelectPassPortTypeAllCanUse}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - List passPorts = passportDataSource.listSource; + List passPorts = passportDataSource.Data.Items; this.cbPassportType.DataSource = passPorts; this.cbPassportType.DisplayMember = nameof(ReadPassportTypeOutputDto.PassportName); this.cbPassportType.ValueMember = nameof(ReadPassportTypeOutputDto.PassportId); @@ -149,12 +149,12 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Base_SelectGenderTypeAll, dic); var genderTypeDataSource = HttpHelper.JsonToModel>(result.message); - if (genderTypeDataSource.StatusCode != StatusCodeConstants.Success) + if (genderTypeDataSource.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Base_SelectGenderTypeAll}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - List listSexType = genderTypeDataSource.listSource; + List listSexType = genderTypeDataSource.Data.Items; this.cbSex.DataSource = listSexType; this.cbSex.DisplayMember = nameof(EnumDto.Description); this.cbSex.ValueMember = nameof(EnumDto.Id); @@ -196,8 +196,8 @@ namespace EOM.TSHotelManagement.FormUI DataChgDate = DateTime.Now }; result = HttpHelper.Request(ApiConstants.Room_CheckinRoomByReservation, HttpHelper.ModelToJson(reser)); - var response = HttpHelper.JsonToModel(result.message); - if (response.StatusCode != StatusCodeConstants.Success) + var response = HttpHelper.JsonToModel(result.message); + if (response.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Room_CheckinRoomByReservation}+接口服务异常,请提交Issue或尝试更新版本!"); return; diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmReserManagement.cs b/EOM.TSHotelManagement.FormUI/AppFunction/FrmReserManagement.cs index a4126c8..39d2ca7 100644 --- a/EOM.TSHotelManagement.FormUI/AppFunction/FrmReserManagement.cs +++ b/EOM.TSHotelManagement.FormUI/AppFunction/FrmReserManagement.cs @@ -71,15 +71,15 @@ namespace EOM.TSHotelManagement.FormUI DataInsUsr = LoginInfo.WorkerNo }; result = HttpHelper.Request(ApiConstants.Reser_InsertReserInfo, HttpHelper.ModelToJson(reser)); - var response = HttpHelper.JsonToModel(result.message); - if (response.StatusCode != StatusCodeConstants.Success) + var response = HttpHelper.JsonToModel(result.message); + if (response.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Reser_InsertReserInfo}+接口服务异常,请提交Issue或尝试更新版本!"); return; } result = HttpHelper.Request(ApiConstants.Room_UpdateRoomInfoWithReser, HttpHelper.ModelToJson(room)); - response = HttpHelper.JsonToModel(result.message); - if (response.StatusCode != StatusCodeConstants.Success) + response = HttpHelper.JsonToModel(result.message); + if (response.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Room_UpdateRoomInfoWithReser}+接口服务异常,请提交Issue或尝试更新版本!"); return; @@ -99,12 +99,12 @@ namespace EOM.TSHotelManagement.FormUI cboReserWay.SelectedIndex = 0; result = HttpHelper.Request(ApiConstants.Room_SelectCanUseRoomAll); var response = HttpHelper.JsonToModel>(result.message); - if (response.StatusCode != StatusCodeConstants.Success) + if (response.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Room_SelectCanUseRoomAll}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - cboReserRoomNo.DataSource = response.listSource; + cboReserRoomNo.DataSource = response.Data.Items; cboReserRoomNo.DisplayMember = nameof(ReadRoomOutputDto.RoomNumber); cboReserRoomNo.ValueMember = nameof(ReadRoomOutputDto.RoomNumber); cboReserRoomNo.Text = ucRoom.co_RoomNo; diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmRoomManagement.cs b/EOM.TSHotelManagement.FormUI/AppFunction/FrmRoomManagement.cs index 242e610..5858bad 100644 --- a/EOM.TSHotelManagement.FormUI/AppFunction/FrmRoomManagement.cs +++ b/EOM.TSHotelManagement.FormUI/AppFunction/FrmRoomManagement.cs @@ -114,9 +114,9 @@ namespace EOM.TSHotelManagement.FormUI var response = HttpHelper.JsonToModel>(httpResponse.message); - if (response.StatusCode != StatusCodeConstants.Success) + if (response.Code != BusinessStatusCode.Success) { - throw new HttpRequestException($"{url} 请求失败,状态码:{response.StatusCode}"); + throw new HttpRequestException($"{url} 请求失败,状态码:{response.Code}"); } var propertyInfo = typeof(ReadRoomOutputDto).GetProperty(propertyName); @@ -125,7 +125,7 @@ namespace EOM.TSHotelManagement.FormUI throw new MissingFieldException($"ReadRoomOutputDto 中未找到 {propertyName} 属性"); } - if (propertyInfo.GetValue(response.Source) is int countValue) + if (propertyInfo.GetValue(response.Data) is int countValue) { statusCounts[targetVar] = countValue; } @@ -226,12 +226,12 @@ namespace EOM.TSHotelManagement.FormUI }; var result = HttpHelper.Request(ApiConstants.RoomType_SelectRoomTypesAll, dic); var response = HttpHelper.JsonToModel>(result.message); - if (response.StatusCode != StatusCodeConstants.Success) + if (response.Code != BusinessStatusCode.Success) { throw new Exception($"{ApiConstants.RoomType_SelectRoomTypesAll}+接口服务异常"); } - var listRoomTypes = response.listSource; + var listRoomTypes = response.Data.Items; if (listRoomTypes == null) { @@ -298,12 +298,12 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Room_SelectRoomAll, dic); var response = HttpHelper.JsonToModel>(result.message); - if (response.StatusCode != StatusCodeConstants.Success) + if (response.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Room_SelectRoomAll}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - romsty = response.listSource; + romsty = response.Data.Items; } else { @@ -315,12 +315,12 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Room_SelectRoomByTypeName, dic); var response = HttpHelper.JsonToModel>(result.message); - if (response.StatusCode != StatusCodeConstants.Success) + if (response.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Room_SelectRoomByTypeName}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - romsty = response.listSource; + romsty = response.Data.Items; } for (int i = 0; i < romsty.Count; i++) { @@ -350,12 +350,12 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Room_SelectRoomByRoomState, dic); var response = HttpHelper.JsonToModel>(result.message); - if (response.StatusCode != StatusCodeConstants.Success) + if (response.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Room_SelectRoomByRoomState}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - romsty = response.listSource; + romsty = response.Data.Items; for (int i = 0; i < romsty.Count; i++) { room = new ucRoom(); diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmRoomStateManagement.cs b/EOM.TSHotelManagement.FormUI/AppFunction/FrmRoomStateManagement.cs index acc0624..52d2fe2 100644 --- a/EOM.TSHotelManagement.FormUI/AppFunction/FrmRoomStateManagement.cs +++ b/EOM.TSHotelManagement.FormUI/AppFunction/FrmRoomStateManagement.cs @@ -46,12 +46,12 @@ namespace EOM.TSHotelManagement.FormUI txtRoomNo.Text = ucRoom.rm_RoomNo; result = HttpHelper.Request(ApiConstants.Base_SelectRoomStateAll); var datas = HttpHelper.JsonToModel>(result.message); - if (datas.StatusCode != 200) + if (datas.Code != 200) { UIMessageBox.ShowError($"{ApiConstants.Base_SelectRoomStateAll}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - cboState.DataSource = datas.listSource; + cboState.DataSource = datas.Data.Items; cboState.DisplayMember = nameof(EnumDto.Description); cboState.ValueMember = nameof(EnumDto.Id); cboState.SelectedIndex = 0; @@ -73,8 +73,8 @@ namespace EOM.TSHotelManagement.FormUI case (int)RoomState.Reserved: var updateRoom = new UpdateRoomInputDto { RoomNumber = txtRoomNo.Text.Trim(), RoomStateId = Convert.ToInt32(cboState.SelectedValue) }; result = HttpHelper.Request(ApiConstants.Room_UpdateRoomStateByRoomNo, updateRoom.ModelToJson()); - var response = HttpHelper.JsonToModel(result.message); - if (response.StatusCode != StatusCodeConstants.Success) + var response = HttpHelper.JsonToModel(result.message); + if (response.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Room_UpdateRoomStateByRoomNo}+接口服务异常,请提交Issue或尝试更新版本!"); return; diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmAboutUs.Designer.cs b/EOM.TSHotelManagement.FormUI/AppFunction/FrmScreenLock.Designer.cs similarity index 38% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmAboutUs.Designer.cs rename to EOM.TSHotelManagement.FormUI/AppFunction/FrmScreenLock.Designer.cs index 0b1c687..e18e5ba 100644 --- a/EOM.TSHotelManagement.FormUI/AppFunction/FrmAboutUs.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/AppFunction/FrmScreenLock.Designer.cs @@ -1,6 +1,6 @@ namespace EOM.TSHotelManagement.FormUI { - partial class FrmAboutUs + partial class FrmScreenLock { /// /// Required designer variable. @@ -28,65 +28,65 @@ /// private void InitializeComponent() { - System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmAboutUs)); - rtbAboutUs = new Sunny.UI.UIRichTextBox(); - btnOk = new AntdUI.Button(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmScreenLock)); + txtPassword = new AntdUI.Input(); + btnUnlock = new AntdUI.Button(); SuspendLayout(); // - // rtbAboutUs + // txtPassword // - rtbAboutUs.BulletIndent = 5; - rtbAboutUs.FillColor = Color.White; - rtbAboutUs.Font = new Font("微软雅黑", 12F); - rtbAboutUs.HideSelection = false; - rtbAboutUs.Location = new Point(3, 2); - rtbAboutUs.Margin = new Padding(3, 4, 3, 4); - rtbAboutUs.MinimumSize = new Size(1, 1); - rtbAboutUs.Name = "rtbAboutUs"; - rtbAboutUs.Padding = new Padding(1, 2, 1, 2); - rtbAboutUs.Radius = 10; - rtbAboutUs.ReadOnly = true; - rtbAboutUs.ScrollBarStyleInherited = false; - rtbAboutUs.ShowText = false; - rtbAboutUs.Size = new Size(385, 146); - rtbAboutUs.Style = Sunny.UI.UIStyle.Custom; - rtbAboutUs.TabIndex = 0; - rtbAboutUs.TextAlignment = ContentAlignment.MiddleCenter; + txtPassword.Font = new Font("Noto Sans SC", 11.9999981F, FontStyle.Regular, GraphicsUnit.Point, 0); + txtPassword.Location = new Point(212, 334); + txtPassword.Name = "txtPassword"; + txtPassword.PasswordChar = '*'; + txtPassword.PasswordCopy = true; + txtPassword.PlaceholderColor = Color.Gray; + txtPassword.PlaceholderText = "请输入当前登录账号密码..."; + txtPassword.Prefix = Properties.Resources._lock; + txtPassword.Size = new Size(285, 45); + txtPassword.TabIndex = 0; + txtPassword.TextAlign = HorizontalAlignment.Center; + txtPassword.UseSystemPasswordChar = true; // - // btnOk + // btnUnlock // - btnOk.Font = new Font("Microsoft YaHei UI", 12F); - btnOk.Location = new Point(145, 152); - btnOk.Name = "btnOk"; - btnOk.Size = new Size(93, 36); - btnOk.TabIndex = 129; - btnOk.Text = "知道了!"; - btnOk.Type = AntdUI.TTypeMini.Primary; - btnOk.Click += btnOk_Click; + btnUnlock.Font = new Font("Noto Sans SC", 11.9999981F, FontStyle.Regular, GraphicsUnit.Point, 0); + btnUnlock.Location = new Point(503, 334); + btnUnlock.Name = "btnUnlock"; + btnUnlock.Size = new Size(85, 45); + btnUnlock.TabIndex = 1; + btnUnlock.Text = "解 锁"; + btnUnlock.Type = AntdUI.TTypeMini.Primary; + btnUnlock.Click += btnUnlock_Click; // - // FrmAboutUs + // FrmScreenLock // - AutoScaleDimensions = new SizeF(7F, 17F); - AutoScaleMode = AutoScaleMode.Font; + AllowShowTitle = false; + AutoScaleMode = AutoScaleMode.None; BackColor = Color.FromArgb(235, 243, 255); - ClientSize = new Size(390, 192); - Controls.Add(btnOk); - Controls.Add(rtbAboutUs); - FormBorderStyle = FormBorderStyle.FixedSingle; + BackgroundImage = Properties.Resources.lock_screen; + BackgroundImageLayout = ImageLayout.Stretch; + ClientSize = new Size(800, 450); + Controls.Add(btnUnlock); + Controls.Add(txtPassword); Icon = (Icon)resources.GetObject("$this.Icon"); - Margin = new Padding(2); - Name = "FrmAboutUs"; - StartPosition = FormStartPosition.CenterScreen; - Text = "关于我们"; - Load += FrmAboutUs_Load; - MouseDown += FrmAboutUs_MouseDown; - MouseMove += FrmAboutUs_MouseMove; + IsForbidAltF4 = true; + MaximizeBox = false; + MinimizeBox = false; + Name = "FrmScreenLock"; + Padding = new Padding(0); + ShowIcon = false; + ShowInTaskbar = false; + ShowTitle = false; + Text = "系统已锁定"; + ZoomScaleRect = new Rectangle(15, 15, 800, 450); + Load += FrmScreenLock_Load; ResumeLayout(false); } #endregion - private Sunny.UI.UIRichTextBox rtbAboutUs; - private AntdUI.Button btnOk; + private AntdUI.Input txtPassword; + private AntdUI.Button btnUnlock; } } \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmScreenLock.cs b/EOM.TSHotelManagement.FormUI/AppFunction/FrmScreenLock.cs new file mode 100644 index 0000000..2d37b5f --- /dev/null +++ b/EOM.TSHotelManagement.FormUI/AppFunction/FrmScreenLock.cs @@ -0,0 +1,45 @@ +using EOM.TSHotelManagement.Common; +using jvncorelib.EncryptorLib; +using Sunny.UI; + +namespace EOM.TSHotelManagement.FormUI +{ + public partial class FrmScreenLock : UIForm + { + public FrmScreenLock() + { + InitializeComponent(); + } + + private void FrmScreenLock_Load(object sender, EventArgs e) + { + + } + + private void txtPassword_Validated(object sender, EventArgs e) + { + + } + + private void btnUnlock_Click(object sender, EventArgs e) + { + if (txtPassword.Text.Trim() == string.Empty) + { + UIMessageBox.ShowError("密码不能为空,请重新输入!"); + txtPassword.Focus(); + return; + } + var password = new EncryptLib().Decryption(LoginInfo.Password); + if (password != null && password == txtPassword.Text.Trim()) + { + this.Close(); + } + else + { + UIMessageBox.ShowError("密码错误,请重新输入!"); + txtPassword.Focus(); + txtPassword.Clear(); + } + } + } +} diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmAboutUs.resx b/EOM.TSHotelManagement.FormUI/AppFunction/FrmScreenLock.resx similarity index 77% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmAboutUs.resx rename to EOM.TSHotelManagement.FormUI/AppFunction/FrmScreenLock.resx index 4c87f86..01c2406 100644 --- a/EOM.TSHotelManagement.FormUI/AppFunction/FrmAboutUs.resx +++ b/EOM.TSHotelManagement.FormUI/AppFunction/FrmScreenLock.resx @@ -117,24 +117,31 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + True + - AAABAAEAICAAAAEAGAA8AwAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAgAAAAIAgGAAAAc3p69AAAAAFz - UkdCAK7OHOkAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA7DAAAOwwHHb6hkAAAC0UlEQVRYR62XPWgU - URSFt9M0i6iIf4g/0WAQ8QfEKqTyrwqIqIUQEIUIEYMxgjYLpklhLBREoqSS4EJIKkGbRYSQRlEQm4BB - RJuAQdQ0wq7fHe6s18nuvvs2u3CYN2/OOffMm/dm3uZyTf7K5XK+Uqls53iI4+EmbfwyiuwEl0GRot85 - /vejbwm8AnfBUb9zgCl3h+GjbMHQOZoJcKLpIIhXZQtzPg/GKd4LulPQdxrcBk/BFxuO89HoEIg2gOep - Ee050O8xgrcODIB3Rj8tnh59DmI7mDV3UeB8rUucIaG7Z0LMuDwQlYzoqkvUgKQTt4JvOADkgil+dqXF - U70s16CXTqikPmmfBAUQ4OXBCJgE5z2auhwMnmnxBdodHjN4x81cKXo0NTkY7QZ/NMCw16iVAW5qcXmb - 7YkI0JpHQNHXGuCht3hLeQT4pgEGvMYy/OAGOOnVpDyZsNVJS+H1Zuld8JjV+A4UPDrhULjT1OuSjiOm - 45jXSHg2iFeXWe77klevMerxGtkAeMx7dZkAmxOdGYFLEUZnjO5xhE6+oukLry3RcQdzOglveY3QjBqj - ixG6Qa31uaqho6idsxFGMyZAZ4RuWmtNVDXczTkzD4L7O/hbTfEP3uI62l81wKAdgY0mQHBJZSZSyazv - XY3CEHyo7orj4pQm+037YOiuZOYr/xdt2Yi+CBTvgLOgAZZ/uLhwAMLisudTxxXuKTAm84fjNdEHAoyb - u++qyVWjdIn8e0ah4Qhcx1A2sanvWEN6uiKU37vC2vKO6THFX9JeHfS0IRgV2W7ng6IMAY816CZN8bec - b3L7ZEJ8RNwHgltrCQv6wXtTfIrzve7iZlldR5h8qo1ZibZs1a9wlNdxN235Y9Kn/Z8Md1HmVXRhK8Bg - B3gAlmyQRm24P8H90MqICobhFjBkhzYzMj+49gbcAe1R5rFkCrRpoP3yCMC2WI+U/xfptNEnT3/LsQAA - AABJRU5ErkJggg== + AAABAAEAICAAAAEAGAA4BAAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAgAAAAIAgGAAAAc3p69AAAAAFz + UkdCAK7OHOkAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA7DAAAOwwHHb6hkAAADzUlEQVRYR62XS0gV + URjHLbJ8ZQYWEQRGWVlCUEhBSW7EWvTcJEgoFQRZYYlFEOYiWrSx3PRauAu1RUEEUVZGRE8VQoxqEelC + NO1tmZD2+4/fvdxx7r0zan/4cc5833e+OTNz5jwSgmp0dDQJNo6MjNTBM/gIf+ALvIV7cAiWWJP/IxIu + tMRtMEwn4oqYb9BItcBSTE4kmEuiPZSvlDgkbL1wH+rhLFyARnhqIY647od6qmstZXDRKJPG1ZRfLdkg + 6CbbIN3CXCJsOmThPwZtaidRb4dCC/MXbTJocGqsuZPgJRRTnWMhviJ+EZyDHsvxHjabO7aITSKwVI0k + 6nqtk/qWtE2Ho9BnuR7AanN7RUwiAVthwBpoVOeYe9IiVRl5ui1nA0WWudzCOR9niwU+p5j44Ikh8pVD + 6HOcBPc4wq6n32sBH6DYXB4RUoBfI19v6KHRjL0GFliYS9g1qK/CL3gCi801Jgyp0AxDcI0GaeZyCd8a + eI3fI+x/oRXWWbhL2LdAh8UeoUgxl+MsMkc3bDezR/gugp5Cv2i4k1yXQA/0QbmZXSJ+Br5a+AF3YJ65 + nATnQWonMMPMHuG/AQOwykyOuJ4F1aDktWb2CF8pdMFvWM69poUc78x4xTHEEH51QBPLUjM5sqcrBr8O + 5IIeUm/7MMVMGVPN8Bn2WWxU4Z9SByT8GrzSZUhW4yzrwCeKHRbnEj71XFPxoGLjiZguijJr6hG+JmKG + 4Tr1FCXPs4ZaZPItziXsldCvuCAi9gXkWXOXsF8CrS2aGVODdqDWyRxQxL+hiPU23R0gMMgn8HQAm37H + fKgyU1jYYnYAu+cT+A5C7NE6oIUqDQocQ4TwxXsD7kFoxg7QE9U5hnHCPuEOgGdCw7YMWi3mAEWi46BS + g0HStsuz4cD2vzqgX1VrjcZANqFjExEVJwnGqFMxtqiDEPtxCi1CLmH3dABz5FR8i+tMczk3iLsYYdsF + nUoeRMQ+AtdkxXXsxYgL3+UYWx5UEqInDoPt9DgqINeaOSIu/nIsYYzckDymWGGuKYt8+0EzpHJ7NyQS + Rq1oWlZ/ghamuHN6UJEnB/TNdfPbkG0ur4hJI6DCgjUvnKEac3n2E+1Xwk3L1wkbzBVbBGk3q9GtRkMU + mrlc39RPlmM3aG+pPPq9N5nbXwTPBm0key2Bzn4nqEbd84WEX+dH7RkbQJ2XWqivt5DgoqEOKCWU4aMZ + 1zr33QVtybTdLoKdcBB0EAn/qtQnfzSLFElCh1NtRIIcTr9TNMHUDqfjReJkKAQtp9GO55rIqmACh5mE + hH9jE4xJZSQJkAAAAABJRU5ErkJggg== \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmSelectCustoInfo.cs b/EOM.TSHotelManagement.FormUI/AppFunction/FrmSelectCustoInfo.cs index 1c71570..9f7821d 100644 --- a/EOM.TSHotelManagement.FormUI/AppFunction/FrmSelectCustoInfo.cs +++ b/EOM.TSHotelManagement.FormUI/AppFunction/FrmSelectCustoInfo.cs @@ -56,12 +56,12 @@ namespace EOM.TSHotelManagement.FormUI #region 加载客户类型信息 result = HttpHelper.Request(ApiConstants.Base_SelectCustoTypeAllCanUse); var customerTypes = HttpHelper.JsonToModel>(result.message); - if (customerTypes.StatusCode != StatusCodeConstants.Success) + if (customerTypes.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Base_SelectCustoTypeAllCanUse}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - this.cbCustoType.DataSource = customerTypes.listSource; + this.cbCustoType.DataSource = customerTypes.Data.Items; this.cbCustoType.DisplayMember = nameof(ReadCustoTypeOutputDto.CustomerTypeName); this.cbCustoType.ValueMember = nameof(ReadCustoTypeOutputDto.CustomerType); this.cbCustoType.SelectedIndex = 0; @@ -71,12 +71,12 @@ namespace EOM.TSHotelManagement.FormUI #region 加载证件类型信息 result = HttpHelper.Request(ApiConstants.Base_SelectPassPortTypeAllCanUse); var passportTypes = HttpHelper.JsonToModel>(result.message); - if (passportTypes.StatusCode != StatusCodeConstants.Success) + if (passportTypes.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Base_SelectPassPortTypeAllCanUse}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - this.cbPassportType.DataSource = passportTypes.listSource; + this.cbPassportType.DataSource = passportTypes.Data.Items; this.cbPassportType.DisplayMember = nameof(ReadPassportTypeOutputDto.PassportName); this.cbPassportType.ValueMember = nameof(ReadPassportTypeOutputDto.PassportId); this.cbPassportType.SelectedIndex = 0; @@ -90,12 +90,12 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Base_SelectGenderTypeAll, dic); var genderTypes = HttpHelper.JsonToModel>(result.message); - if (genderTypes.StatusCode != StatusCodeConstants.Success) + if (genderTypes.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Base_SelectGenderTypeAll}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - this.cbSex.DataSource = genderTypes.listSource; + this.cbSex.DataSource = genderTypes.Data.Items; this.cbSex.DisplayMember = nameof(EnumDto.Description); this.cbSex.ValueMember = nameof(EnumDto.Id); this.cbSex.SelectedIndex = 0; @@ -108,19 +108,19 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Customer_SelectCustoByInfo, dic); var c = HttpHelper.JsonToModel>(result.message); - if (c.StatusCode != StatusCodeConstants.Success) + if (c.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Customer_SelectCustoByInfo}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - txtCustoAdress.Text = c.Source.CustomerAddress; - txtCustoName.Text = c.Source.CustomerName; - txtCardID.Text = c.Source.IdCardNumber; - txtCustoTel.Text = c.Source.CustomerPhoneNumber; - cbSex.Text = c.Source.CustomerGender == 1 ? "男" : "女"; - cbCustoType.SelectedValue = c.Source.CustomerType; - cbPassportType.SelectedValue = c.Source.PassportId; - dtpBirthday.Value = Convert.ToDateTime(c.Source.DateOfBirth); + txtCustoAdress.Text = c.Data.CustomerAddress; + txtCustoName.Text = c.Data.CustomerName; + txtCardID.Text = c.Data.IdCardNumber; + txtCustoTel.Text = c.Data.CustomerPhoneNumber; + cbSex.Text = c.Data.CustomerGender == 1 ? "男" : "女"; + cbCustoType.SelectedValue = c.Data.CustomerType; + cbPassportType.SelectedValue = c.Data.PassportId; + dtpBirthday.Value = Convert.ToDateTime(c.Data.DateOfBirth); } } } diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmSellThing.cs b/EOM.TSHotelManagement.FormUI/AppFunction/FrmSellThing.cs index 707520a..bc52d16 100644 --- a/EOM.TSHotelManagement.FormUI/AppFunction/FrmSellThing.cs +++ b/EOM.TSHotelManagement.FormUI/AppFunction/FrmSellThing.cs @@ -76,23 +76,23 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Sellthing_SelectSellThingAll, dic); var response = HttpHelper.JsonToModel>(result.message); - if (response.StatusCode != StatusCodeConstants.Success) + if (response.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Sellthing_SelectSellThingAll}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - var listTableSource = new List(); + var listTableData = new List(); - List lstSource = response.listSource; + List lstData = response.Data.Items; TableComHelper tableComHelper = new TableComHelper(); - listTableSource = tableComHelper.ConvertToAntdItems(lstSource); + listTableData = tableComHelper.ConvertToAntdItems(lstData); dgvSellthing.Spin("正在加载中...", config => { this.dgvSellthing.Columns = tableComHelper.ConvertToAntdColumns(tableComHelper.GenerateDataColumns()); - this.dgvSellthing.DataSource = listTableSource; + this.dgvSellthing.DataSource = listTableData; }, () => { System.Diagnostics.Debug.WriteLine("加载结束"); @@ -111,15 +111,15 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Spend_SelectSpendByRoomNo, dic); var response = HttpHelper.JsonToModel>(result.message); - if (response.StatusCode != StatusCodeConstants.Success) + if (response.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Spend_SelectSpendByRoomNo}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - List lstSource = response.listSource; + List lstData = response.Data.Items; TableComHelper tableComHelper = new TableComHelper(); dgvRoomSell.Columns = tableComHelper.ConvertToAntdColumns(tableComHelper.GenerateDataColumns()); - dgvRoomSell.DataSource = tableComHelper.ConvertToAntdItems(lstSource); + dgvRoomSell.DataSource = tableComHelper.ConvertToAntdItems(lstData); }, () => { System.Diagnostics.Debug.WriteLine("加载结束"); @@ -154,19 +154,19 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Sellthing_SelectSellThingAll, dic); var response = HttpHelper.JsonToModel>(result.message); - if (response.StatusCode != StatusCodeConstants.Success) + if (response.Code != BusinessStatusCode.Success) { AntdUI.Message.error(this, $"{ApiConstants.Sellthing_SelectSellThingAll}+接口服务异常,请提交Issue或尝试更新版本!"); return null!; } - List lstSource = response.listSource; - totalCount = lstSource.Count; - var listTableSource = new List(); + List lstData = response.Data.Items; + totalCount = lstData.Count; + var listTableData = new List(); TableComHelper tableComHelper = new TableComHelper(); - listTableSource = tableComHelper.ConvertToAntdItems(lstSource); + listTableData = tableComHelper.ConvertToAntdItems(lstData); - return listTableSource; + return listTableData; } #endregion @@ -241,8 +241,8 @@ namespace EOM.TSHotelManagement.FormUI WorkerNo = LoginInfo.WorkerNo, SoftwareVersion = LoginInfo.SoftwareVersion })); - var response = HttpHelper.JsonToModel(result.message!); - if (response.StatusCode != StatusCodeConstants.Success) + var response = HttpHelper.JsonToModel(result.message!); + if (response.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError(response.Message ?? "添加消费记录失败"); return; @@ -291,25 +291,25 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Sellthing_SelectSellThingByNameAndPrice, dic); var response = HttpHelper.JsonToModel>(result.message); - if (response.StatusCode != StatusCodeConstants.Success) + if (response.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Sellthing_SelectSellThingByNameAndPrice}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - ReadSellThingOutputDto s = response.Source; + ReadSellThingOutputDto s = response.Data; decimal num = Convert.ToDecimal(spend.ConsumptionQuantity); decimal inboundStock = (s.Stock + num); result = HttpHelper.Request(ApiConstants.Spend_UndoCustomerSpend, HttpHelper.ModelToJson(new UpdateSpendInputDto { SpendNumber = spend.SpendNumber })); - var undoSpendResponse = HttpHelper.JsonToModel(result.message); - if (undoSpendResponse.StatusCode != StatusCodeConstants.Success) + var undoSpendResponse = HttpHelper.JsonToModel(result.message); + if (undoSpendResponse.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Spend_UndoCustomerSpend}+接口服务异常,请提交Issue或尝试更新版本!"); return; } var sellThing = new UpdateSellThingInputDto { ProductName = s.ProductName, ProductPrice = s.ProductPrice, Stock = inboundStock, ProductNumber = s.ProductNumber, Specification = s.Specification }; result = HttpHelper.Request(ApiConstants.Sellthing_UpdateSellthingInfo, HttpHelper.ModelToJson(sellThing)); - var updateResponse = HttpHelper.JsonToModel(result.message); - if (updateResponse.StatusCode != StatusCodeConstants.Success) + var updateResponse = HttpHelper.JsonToModel(result.message); + if (updateResponse.Code != BusinessStatusCode.Success) { UIMessageTip.ShowError("撤销失败!", 1000); RecordHelper.Record($"接口异常。Message:\n{updateResponse.Message}", Common.Core.LogLevel.Critical); @@ -375,12 +375,12 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Room_SelectRoomByRoomNo, dic); var checkResponse = HttpHelper.JsonToModel>(result.message); - if (checkResponse.StatusCode != StatusCodeConstants.Success) + if (checkResponse.Code != BusinessStatusCode.Success) { UIMessageBox.ShowError($"{ApiConstants.Room_SelectRoomByRoomNo}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - ReadRoomOutputDto r = checkResponse.Source; + ReadRoomOutputDto r = checkResponse.Data; if (txtRoomNo.Text == "") { lblState.Text = ""; diff --git a/EOM.TSHotelManagement.FormUI/AppInterface/FrmLoading.cs b/EOM.TSHotelManagement.FormUI/AppInterface/FrmLoading.cs index 2152b22..b714335 100644 --- a/EOM.TSHotelManagement.FormUI/AppInterface/FrmLoading.cs +++ b/EOM.TSHotelManagement.FormUI/AppInterface/FrmLoading.cs @@ -26,6 +26,7 @@ using EOM.TSHotelManagement.Common; using EOM.TSHotelManagement.Common.Util; using Newtonsoft.Json; using System.Diagnostics; +using System.Runtime.InteropServices; namespace EOM.TSHotelManagement.FormUI { @@ -167,7 +168,7 @@ namespace EOM.TSHotelManagement.FormUI string targetDirectory = Path.Combine(selectedPath, FolderName, tagName); - if(!Path.Exists(targetDirectory)) + if (!Path.Exists(targetDirectory)) Directory.CreateDirectory(targetDirectory); var tempFilePath = Path.Combine(targetDirectory, fileName); @@ -255,6 +256,14 @@ namespace EOM.TSHotelManagement.FormUI private void FrmLoading_Load(object sender, EventArgs e) { + if (RuntimeInformation.OSArchitecture != Architecture.X64) + { + lblTips.Text = LocalizationHelper.GetLocalizedString("Current Software only support x64 bit Architecture, running failure", "本应用仅支持x64位系统架构,运行失败"); + AntdUI.Modal.open(this, LocalizationHelper.GetLocalizedString("Tips", "系统提示"), LocalizationHelper.GetLocalizedString("Current Software only support x64 bit Architecture, running failure", "本应用不支持x64位系统架构,运行失败"), TType.Info); + Thread.Sleep(2000); + ExitApplication(); + return; + } lblLocalSoftwareVersion.Text = CurrentVersion; CheckForUpdate(); } diff --git a/EOM.TSHotelManagement.FormUI/AppInterface/FrmLogin.Designer.cs b/EOM.TSHotelManagement.FormUI/AppInterface/FrmLogin.Designer.cs index 0f1d14a..bcd09eb 100644 --- a/EOM.TSHotelManagement.FormUI/AppInterface/FrmLogin.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/AppInterface/FrmLogin.Designer.cs @@ -61,6 +61,7 @@ txtAccount.PlaceholderText = ""; txtAccount.Size = new Size(238, 52); txtAccount.TabIndex = 32; + txtAccount.Text = "WK010"; // // txtWorkerPwd // @@ -74,6 +75,7 @@ txtWorkerPwd.PlaceholderText = ""; txtWorkerPwd.Size = new Size(238, 52); txtWorkerPwd.TabIndex = 33; + txtWorkerPwd.Text = "WK010"; // // picLogin // diff --git a/EOM.TSHotelManagement.FormUI/AppInterface/FrmLogin.cs b/EOM.TSHotelManagement.FormUI/AppInterface/FrmLogin.cs index 44c1ec9..3836e03 100644 --- a/EOM.TSHotelManagement.FormUI/AppInterface/FrmLogin.cs +++ b/EOM.TSHotelManagement.FormUI/AppInterface/FrmLogin.cs @@ -26,6 +26,7 @@ using AntdUI; using EOM.TSHotelManagement.Common; using EOM.TSHotelManagement.Common.Contract; using EOM.TSHotelManagement.Common.Util; +using jvncorelib.EncryptorLib; using jvncorelib.EntityLib; namespace EOM.TSHotelManagement.FormUI @@ -131,13 +132,13 @@ namespace EOM.TSHotelManagement.FormUI var response = HttpHelper.JsonToModel>(result.message); - if (response.StatusCode != StatusCodeConstants.Success) + if (response.Code != BusinessStatusCode.Success) { AntdUI.Modal.open(this, LocalizationHelper.GetLocalizedString("System prompt", "系统提示"), LocalizationHelper.GetLocalizedString($"{ApiConstants.Employee_SelectEmployeeInfoByEmployeeIdAndEmployeePwd} is abnormal. Please submit an issue", $"{ApiConstants.Employee_SelectEmployeeInfoByEmployeeIdAndEmployeePwd}+接口服务异常,请提交issue"), TType.Error); return; } - ReadEmployeeOutputDto w = response.Source; + ReadEmployeeOutputDto w = response.Data; if (!w.IsNullOrEmpty()) { @@ -151,6 +152,7 @@ namespace EOM.TSHotelManagement.FormUI LoginInfo.WorkerName = w.EmployeeName; LoginInfo.WorkerClub = w.DepartmentName; LoginInfo.WorkerPosition = w.PositionName; + LoginInfo.Password = new EncryptLib().Encryption(txtWorkerPwd.Text.Trim(), EncryptionLevel.Enhanced); LoginInfo.SoftwareVersion = ApplicationUtil.GetApplicationVersion().ToString(); LoginInfo.UserToken = w.UserToken; diff --git a/EOM.TSHotelManagement.FormUI/AppMain/FrmMain.Designer.cs b/EOM.TSHotelManagement.FormUI/AppMain/FrmMain.Designer.cs index 85a8d62..22a3e6a 100644 --- a/EOM.TSHotelManagement.FormUI/AppMain/FrmMain.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/AppMain/FrmMain.Designer.cs @@ -38,14 +38,13 @@ cmsMain = new ContextMenuStrip(components); tsmiChangeUser = new ToolStripMenuItem(); tsmiMySpace = new ToolStripMenuItem(); - tsmiExChange = new ToolStripMenuItem(); toolStripSeparator3 = new ToolStripSeparator(); tsmiLockScreen = new ToolStripMenuItem(); toolStripSeparator4 = new ToolStripSeparator(); - tsmiLoginBackSystem = new ToolStripMenuItem(); - toolStripSeparator2 = new ToolStripSeparator(); tsmiUpdateLog = new ToolStripMenuItem(); - tsmiAboutUs = new ToolStripMenuItem(); + tsmiHelp = new ToolStripMenuItem(); + tsmiAccessOfficial = new ToolStripMenuItem(); + tsmiAbout = new ToolStripMenuItem(); tsmiExitSystem = new ToolStripMenuItem(); linkLabel1 = new LinkLabel(); lblScroll = new Sunny.UI.UIScrollingText(); @@ -54,9 +53,9 @@ btnHello = new Sunny.UI.UIButton(); uiButton1 = new Sunny.UI.UIButton(); pnlCheckInfo = new Panel(); + lblCheckDay = new AntdUI.Label(); lblClose = new Label(); label4 = new Label(); - lblCheckDay = new Label(); label2 = new Label(); picLogo = new PictureBox(); muNavBar = new AntdUI.Menu(); @@ -75,11 +74,11 @@ lblTime.AutoSize = true; lblTime.BackColor = Color.Transparent; lblTime.FlatStyle = FlatStyle.Flat; - lblTime.Font = new Font("Microsoft Sans Serif", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); + lblTime.Font = new Font("Noto Sans SC", 14.2499981F, FontStyle.Regular, GraphicsUnit.Point, 0); lblTime.Location = new Point(53, 141); lblTime.Margin = new Padding(4, 0, 4, 0); lblTime.Name = "lblTime"; - lblTime.Size = new Size(92, 24); + lblTime.Size = new Size(89, 19); lblTime.TabIndex = 2; lblTime.Text = "NowTime"; // @@ -93,7 +92,7 @@ // lblSoftName.BackColor = Color.Transparent; lblSoftName.FlatStyle = FlatStyle.Flat; - lblSoftName.Font = new Font("Microsoft Sans Serif", 15F, FontStyle.Bold, GraphicsUnit.Point, 0); + lblSoftName.Font = new Font("Noto Sans SC", 14.9999981F, FontStyle.Regular, GraphicsUnit.Point, 0); lblSoftName.Location = new Point(328, 7); lblSoftName.Margin = new Padding(4, 0, 4, 0); lblSoftName.Name = "lblSoftName"; @@ -123,94 +122,86 @@ // cmsMain // cmsMain.Font = new Font("Microsoft YaHei UI Light", 12F, FontStyle.Italic, GraphicsUnit.Point, 134); - cmsMain.Items.AddRange(new ToolStripItem[] { tsmiChangeUser, tsmiMySpace, tsmiExChange, toolStripSeparator3, tsmiLockScreen, toolStripSeparator4, tsmiLoginBackSystem, toolStripSeparator2, tsmiUpdateLog, tsmiAboutUs, tsmiExitSystem }); + cmsMain.Items.AddRange(new ToolStripItem[] { tsmiChangeUser, tsmiMySpace, toolStripSeparator3, tsmiLockScreen, toolStripSeparator4, tsmiUpdateLog, tsmiHelp, tsmiAbout, tsmiExitSystem }); cmsMain.Name = "cmsMain"; cmsMain.RenderMode = ToolStripRenderMode.Professional; - cmsMain.Size = new Size(314, 214); + cmsMain.Size = new Size(181, 192); // // tsmiChangeUser // - tsmiChangeUser.Font = new Font("Microsoft Sans Serif", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); + tsmiChangeUser.Font = new Font("Noto Sans SC", 11.9999981F); tsmiChangeUser.Image = Properties.Resources.切换账号; tsmiChangeUser.Name = "tsmiChangeUser"; - tsmiChangeUser.Size = new Size(313, 24); + tsmiChangeUser.Size = new Size(180, 22); tsmiChangeUser.Text = "切换用户"; tsmiChangeUser.Click += tsmiChangeUser_Click; // // tsmiMySpace // - tsmiMySpace.Font = new Font("Microsoft Sans Serif", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); + tsmiMySpace.Font = new Font("Noto Sans SC", 11.9999981F); tsmiMySpace.Image = Properties.Resources.个人中心; tsmiMySpace.Name = "tsmiMySpace"; - tsmiMySpace.Size = new Size(313, 24); + tsmiMySpace.Size = new Size(180, 22); tsmiMySpace.Text = "个人中心"; tsmiMySpace.Click += tsmiMySpace_Click; // - // tsmiExChange - // - tsmiExChange.Font = new Font("Microsoft Sans Serif", 12F); - tsmiExChange.Name = "tsmiExChange"; - tsmiExChange.Size = new Size(313, 24); - tsmiExChange.Text = "换班"; - // // toolStripSeparator3 // toolStripSeparator3.Name = "toolStripSeparator3"; - toolStripSeparator3.Size = new Size(310, 6); + toolStripSeparator3.Size = new Size(177, 6); // // tsmiLockScreen // - tsmiLockScreen.Enabled = false; - tsmiLockScreen.Font = new Font("Microsoft Sans Serif", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); + tsmiLockScreen.Font = new Font("Noto Sans SC", 11.9999981F); tsmiLockScreen.Image = Properties.Resources.锁屏; tsmiLockScreen.Name = "tsmiLockScreen"; - tsmiLockScreen.Size = new Size(313, 24); - tsmiLockScreen.Text = "快速锁屏(功能重构中,暂不开放)"; + tsmiLockScreen.Size = new Size(180, 22); + tsmiLockScreen.Text = "系统锁定"; tsmiLockScreen.Click += tsmiLockScreen_Click; // // toolStripSeparator4 // toolStripSeparator4.Name = "toolStripSeparator4"; - toolStripSeparator4.Size = new Size(310, 6); - // - // tsmiLoginBackSystem - // - tsmiLoginBackSystem.Enabled = false; - tsmiLoginBackSystem.Font = new Font("Microsoft Sans Serif", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); - tsmiLoginBackSystem.Image = Properties.Resources.系统管理员; - tsmiLoginBackSystem.Name = "tsmiLoginBackSystem"; - tsmiLoginBackSystem.Size = new Size(313, 24); - tsmiLoginBackSystem.Text = "进入后台管理系统"; - tsmiLoginBackSystem.Click += tsmiLoginBackSystem_Click; - // - // toolStripSeparator2 - // - toolStripSeparator2.Name = "toolStripSeparator2"; - toolStripSeparator2.Size = new Size(310, 6); + toolStripSeparator4.Size = new Size(177, 6); // // tsmiUpdateLog // - tsmiUpdateLog.Font = new Font("Microsoft Sans Serif", 12F); + tsmiUpdateLog.Font = new Font("Noto Sans SC", 11.9999981F); tsmiUpdateLog.Name = "tsmiUpdateLog"; - tsmiUpdateLog.Size = new Size(313, 24); + tsmiUpdateLog.Size = new Size(180, 22); tsmiUpdateLog.Text = "查看更新日志"; tsmiUpdateLog.Click += tsmiUpdateLog_Click; // - // tsmiAboutUs + // tsmiHelp + // + tsmiHelp.DropDownItems.AddRange(new ToolStripItem[] { tsmiAccessOfficial }); + tsmiHelp.Font = new Font("Noto Sans SC", 11.9999981F); + tsmiHelp.Image = Properties.Resources.关于我们; + tsmiHelp.Name = "tsmiHelp"; + tsmiHelp.Size = new Size(180, 22); + tsmiHelp.Text = "帮助"; + // + // tsmiAccessOfficial + // + tsmiAccessOfficial.Name = "tsmiAccessOfficial"; + tsmiAccessOfficial.Size = new Size(180, 22); + tsmiAccessOfficial.Text = "访问官网"; + tsmiAccessOfficial.Click += tsmiAccessOfficial_Click; + // + // tsmiAbout // - tsmiAboutUs.Font = new Font("Microsoft Sans Serif", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); - tsmiAboutUs.Image = Properties.Resources.关于我们; - tsmiAboutUs.Name = "tsmiAboutUs"; - tsmiAboutUs.Size = new Size(313, 24); - tsmiAboutUs.Text = "关于我们"; - tsmiAboutUs.Click += tsmiAboutUs_Click; + tsmiAbout.Font = new Font("Noto Sans SC", 11.9999981F, FontStyle.Regular, GraphicsUnit.Point, 0); + tsmiAbout.Name = "tsmiAbout"; + tsmiAbout.Size = new Size(180, 22); + tsmiAbout.Text = "关于"; + tsmiAbout.Click += tsmiAbout_Click; // // tsmiExitSystem // - tsmiExitSystem.Font = new Font("Microsoft Sans Serif", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); + tsmiExitSystem.Font = new Font("Noto Sans SC", 11.9999981F); tsmiExitSystem.Image = Properties.Resources.注销; tsmiExitSystem.Name = "tsmiExitSystem"; - tsmiExitSystem.Size = new Size(313, 24); + tsmiExitSystem.Size = new Size(180, 22); tsmiExitSystem.Text = "退出系统"; tsmiExitSystem.Click += tsmiExitSystem_Click; // @@ -218,12 +209,12 @@ // linkLabel1.AutoSize = true; linkLabel1.BackColor = Color.Transparent; - linkLabel1.Font = new Font("Microsoft Sans Serif", 10.5F, FontStyle.Regular, GraphicsUnit.Point, 134); + linkLabel1.Font = new Font("Noto Sans SC", 10.5F, FontStyle.Regular, GraphicsUnit.Point, 0); linkLabel1.LinkBehavior = LinkBehavior.HoverUnderline; linkLabel1.Location = new Point(214, 25); linkLabel1.Margin = new Padding(4, 0, 4, 0); linkLabel1.Name = "linkLabel1"; - linkLabel1.Size = new Size(50, 17); + linkLabel1.Size = new Size(49, 14); linkLabel1.TabIndex = 26; linkLabel1.TabStop = true; linkLabel1.Text = "未打卡"; @@ -258,11 +249,11 @@ label3.AutoSize = true; label3.BackColor = Color.Transparent; label3.FlatStyle = FlatStyle.Flat; - label3.Font = new Font("Microsoft Sans Serif", 14.25F); + label3.Font = new Font("Noto Sans SC", 14.2499981F, FontStyle.Regular, GraphicsUnit.Point, 0); label3.Location = new Point(53, 193); label3.Margin = new Padding(4, 0, 4, 0); label3.Name = "label3"; - label3.Size = new Size(54, 24); + label3.Size = new Size(53, 19); label3.TabIndex = 30; label3.Text = "Hello"; // @@ -312,9 +303,9 @@ pnlCheckInfo.BackColor = Color.Transparent; pnlCheckInfo.BackgroundImage = Properties.Resources.打卡2; pnlCheckInfo.BackgroundImageLayout = ImageLayout.Stretch; + pnlCheckInfo.Controls.Add(lblCheckDay); pnlCheckInfo.Controls.Add(lblClose); pnlCheckInfo.Controls.Add(label4); - pnlCheckInfo.Controls.Add(lblCheckDay); pnlCheckInfo.Controls.Add(label2); pnlCheckInfo.Location = new Point(208, 58); pnlCheckInfo.Margin = new Padding(4); @@ -323,6 +314,16 @@ pnlCheckInfo.TabIndex = 27; pnlCheckInfo.Visible = false; // + // lblCheckDay + // + lblCheckDay.Font = new Font("Noto Sans SC", 10.5F, FontStyle.Regular, GraphicsUnit.Point, 0); + lblCheckDay.Location = new Point(7, 42); + lblCheckDay.Name = "lblCheckDay"; + lblCheckDay.Size = new Size(50, 23); + lblCheckDay.TabIndex = 4; + lblCheckDay.Text = "365"; + lblCheckDay.TextAlign = ContentAlignment.MiddleCenter; + // // lblClose // lblClose.AutoSize = true; @@ -338,33 +339,22 @@ // label4 // label4.AutoSize = true; - label4.Font = new Font("Microsoft Sans Serif", 10.5F, FontStyle.Regular, GraphicsUnit.Point, 134); + label4.Font = new Font("Noto Sans SC", 10.5F, FontStyle.Regular, GraphicsUnit.Point, 0); label4.Location = new Point(21, 68); label4.Margin = new Padding(4, 0, 4, 0); label4.Name = "label4"; - label4.Size = new Size(22, 17); + label4.Size = new Size(21, 14); label4.TabIndex = 2; label4.Text = "天"; // - // lblCheckDay - // - lblCheckDay.AutoSize = true; - lblCheckDay.Font = new Font("Microsoft Sans Serif", 10.5F, FontStyle.Regular, GraphicsUnit.Point, 134); - lblCheckDay.Location = new Point(8, 40); - lblCheckDay.Margin = new Padding(4, 0, 4, 0); - lblCheckDay.Name = "lblCheckDay"; - lblCheckDay.Size = new Size(48, 17); - lblCheckDay.TabIndex = 1; - lblCheckDay.Text = "36500"; - // // label2 // label2.AutoSize = true; - label2.Font = new Font("Microsoft Sans Serif", 9F, FontStyle.Regular, GraphicsUnit.Point, 134); - label2.Location = new Point(6, 6); + label2.Font = new Font("Noto Sans SC", 9F, FontStyle.Regular, GraphicsUnit.Point, 0); + label2.Location = new Point(6, 11); label2.Margin = new Padding(4, 0, 4, 0); label2.Name = "label2"; - label2.Size = new Size(67, 15); + label2.Size = new Size(65, 12); label2.TabIndex = 0; label2.Text = "您已打卡:"; // @@ -384,7 +374,7 @@ // // muNavBar // - muNavBar.Font = new Font("Microsoft YaHei UI", 14F); + muNavBar.Font = new Font("Noto Sans SC", 14.2499981F, FontStyle.Regular, GraphicsUnit.Point, 0); muNavBar.Location = new Point(311, 172); muNavBar.Mode = AntdUI.TMenuMode.Horizontal; muNavBar.Name = "muNavBar"; @@ -490,14 +480,12 @@ private System.Windows.Forms.Panel pnlMID; private System.Windows.Forms.ToolStripMenuItem tsmiChangeUser; private System.Windows.Forms.ToolStripMenuItem tsmiLockScreen; - private System.Windows.Forms.ToolStripSeparator toolStripSeparator2; private System.Windows.Forms.ToolStripMenuItem tsmiCheckUpdate; private System.Windows.Forms.ToolStripMenuItem tsmiExitSystem; - private System.Windows.Forms.ToolStripMenuItem tsmiAboutUs; + private System.Windows.Forms.ToolStripMenuItem tsmiHelp; private System.Windows.Forms.LinkLabel linkLabel1; private System.Windows.Forms.Panel pnlCheckInfo; private System.Windows.Forms.Label label4; - private System.Windows.Forms.Label lblCheckDay; private System.Windows.Forms.Label label2; private System.Windows.Forms.Label lblClose; public System.Windows.Forms.NotifyIcon notifyIcon1; @@ -510,14 +498,15 @@ private System.Windows.Forms.ToolStripMenuItem tsmiMySpace; private System.Windows.Forms.ToolStripSeparator toolStripSeparator3; private System.Windows.Forms.ToolStripSeparator toolStripSeparator4; - private System.Windows.Forms.ToolStripMenuItem tsmiLoginBackSystem; private Sunny.UI.UIButton picSetting; - private System.Windows.Forms.ToolStripMenuItem tsmiExChange; private AntdUI.Menu muNavBar; private AntdUI.Button btnClose; private AntdUI.Button btnFormSize; private AntdUI.Button btnSetting; private AntdUI.ColorPicker cpUITheme; private ToolStripMenuItem tsmiUpdateLog; + private AntdUI.Label lblCheckDay; + private ToolStripMenuItem tsmiAccessOfficial; + private ToolStripMenuItem tsmiAbout; } } \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/AppMain/FrmMain.cs b/EOM.TSHotelManagement.FormUI/AppMain/FrmMain.cs index 86e1a9d..ee6b9d8 100644 --- a/EOM.TSHotelManagement.FormUI/AppMain/FrmMain.cs +++ b/EOM.TSHotelManagement.FormUI/AppMain/FrmMain.cs @@ -29,7 +29,7 @@ using EOM.TSHotelManagement.Common.Util; using EOM.TSHotelManagement.FormUI.Properties; using jvncorelib.CodeLib; using Sunny.UI; -using System.Runtime.InteropServices; +using System.Diagnostics; namespace EOM.TSHotelManagement.FormUI { @@ -89,10 +89,6 @@ namespace EOM.TSHotelManagement.FormUI public static string wk_WorkerName; public static string wk_WorkerNames; - #region 调用windows的系统锁定 - [DllImport("user32 ")] - public static extern bool LockWorkStation();//这个是调用windows的系统锁定 - #endregion #region 窗体渐变相关代码 private bool showing = true; @@ -156,7 +152,7 @@ namespace EOM.TSHotelManagement.FormUI #region 从数据库读取文字滚动的内容 result = HttpHelper.Request(ApiConstants.PromotionContent_SelectPromotionContents); var response = HttpHelper.JsonToModel>(result.message); - if (response.StatusCode != StatusCodeConstants.Success) + if (response.Code != BusinessStatusCode.Success) { fonts = null; } @@ -168,16 +164,16 @@ namespace EOM.TSHotelManagement.FormUI #region 定时器:文字滚动间隔 private void tmrFont_Tick(object sender, EventArgs e) { - if (fonts.listSource == null || fonts.listSource.Count == 0) + if (fonts.Data.Items == null || fonts.Data.Items.Count == 0) { return; } fontn++; - if (fontn >= fonts.listSource.Count) + if (fontn >= fonts.Data.Items.Count) { fontn = 0; } - lblScroll.Text = fonts.listSource[fontn].PromotionContentMessage; + lblScroll.Text = fonts.Data.Items[fontn].PromotionContentMessage; } #endregion @@ -197,39 +193,27 @@ namespace EOM.TSHotelManagement.FormUI } #endregion - #region 窗体边框阴影效果变量申明 - - const int CS_DropSHADOW = 0x20000; - const int GCL_STYLE = (-26); - //声明Win32 API - [DllImport("user32.dll", CharSet = CharSet.Auto)] - public static extern int SetClassLong(IntPtr hwnd, int nIndex, int dwNewLong); - [DllImport("user32.dll", CharSet = CharSet.Auto)] - public static extern int GetClassLong(IntPtr hwnd, int nIndex); - - #endregion - /// /// 加载导航控件列表 /// private void LoadNavBar() { - var listSource = new List(); + var listData = new List(); #region 菜单导航代码块 result = HttpHelper.Request(ApiConstants.NavBar_NavBarList); var response = HttpHelper.JsonToModel>(result.message); - if (response.StatusCode != StatusCodeConstants.Success) + if (response.Code != BusinessStatusCode.Success) { AntdUI.Message.error(this, "服务器维护中,请过会再试"); - listSource = null; + listData = null; return; } - listSource = response.listSource; + listData = response.Data.Items; MenuItem menuItem = null; muNavBar.Controls.Clear(); - if (!listSource.IsNullOrEmpty()) + if (!listData.IsNullOrEmpty()) { - foreach (var item in listSource) + foreach (var item in listData) { menuItem = new MenuItem { @@ -263,7 +247,7 @@ namespace EOM.TSHotelManagement.FormUI { this.Owner.Hide(); - lblSoftName.Text = System.Windows.Forms.Application.ProductName.ToString() + "_V" + ApplicationUtil.GetApplicationVersion(); + lblSoftName.Text = System.Windows.Forms.Application.ProductName.ToString() + " V" + ApplicationUtil.GetApplicationVersion(); tmrDate.Enabled = true; @@ -291,23 +275,9 @@ namespace EOM.TSHotelManagement.FormUI btnHello.BackgroundImage = Resources.咖啡; } - Dictionary user = new Dictionary() - { - { nameof(ReadEmployeeCheckInputDto.EmployeeId), LoginInfo.WorkerNo} - }; - result = HttpHelper.Request(ApiConstants.EmployeeCheck_SelectToDayCheckInfoByWorkerNo, user); - var response = HttpHelper.JsonToModel>(result.message); - if (response.StatusCode != StatusCodeConstants.Success) - { - UIMessageTip.ShowError($"{ApiConstants.EmployeeCheck_SelectToDayCheckInfoByWorkerNo}打卡接口异常:{response.Message}"); - return; - } - if (response.Source.IsChecked) - { - linkLabel1.Text = "已打卡"; - linkLabel1.ForeColor = Color.Green; - linkLabel1.LinkColor = Color.Green; - } + pnlCheckInfo.Visible = false; + checkEmployeeCheckInfo(); + notifyIcon1.Text = "TS酒店管理系统-" + LoginInfo.WorkerName + "-版本号:" + ApplicationUtil.GetApplicationVersion(); wk_WorkerName = LoginInfo.WorkerName; @@ -324,7 +294,8 @@ namespace EOM.TSHotelManagement.FormUI #region 调用系统锁屏方法 private void tsmiLockScreen_Click(object sender, EventArgs e) { - LockWorkStation(); + var lockForm = new FrmScreenLock(); + lockForm.ShowDialog(); } #endregion @@ -352,8 +323,6 @@ namespace EOM.TSHotelManagement.FormUI #region 关于我们选项的事件方法 private void tsmiAboutUs_Click(object sender, EventArgs e) { - FrmAboutUs frm = new FrmAboutUs(); - frm.Show(); } #endregion @@ -371,39 +340,40 @@ namespace EOM.TSHotelManagement.FormUI } private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) + { + checkEmployeeCheckInfo(); + } + + private void checkEmployeeCheckInfo() { Dictionary user = new Dictionary() { { nameof(ReadEmployeeCheckInputDto.EmployeeId), LoginInfo.WorkerNo} }; - result = HttpHelper.Request(ApiConstants.EmployeeCheck_SelectToDayCheckInfoByWorkerNo, user); + + var result = HttpHelper.Request(ApiConstants.EmployeeCheck_SelectToDayCheckInfoByWorkerNo, user); var response = HttpHelper.JsonToModel>(result.message); - if (response.StatusCode != StatusCodeConstants.Success) + + if (response.Code != BusinessStatusCode.Success) { UIMessageTip.ShowError($"打卡接口:{ApiConstants.EmployeeCheck_SelectToDayCheckInfoByWorkerNo}异常:{response.Message}"); return; } - if (response.Source.IsChecked) - { - linkLabel1.Text = "已打卡"; - linkLabel1.ForeColor = Color.Green; - linkLabel1.LinkColor = Color.Green; - pnlCheckInfo.Visible = true; - result = HttpHelper.Request(ApiConstants.EmployeeCheck_SelectWorkerCheckDaySumByEmployeeId, user); - response = HttpHelper.JsonToModel>(result.message); - if (response.StatusCode != StatusCodeConstants.Success) - { - UIMessageTip.ShowError($"打卡天数接口{ApiConstants.EmployeeCheck_SelectWorkerCheckDaySumByEmployeeId}异常:{response.Message}"); - return; - } - lblCheckDay.Text = Convert.ToString(response.Source.CheckDay); - } - else + + var tmCur = DateTime.Today; + int currentHour = tmCur.Hour; + bool isMorningShift = currentHour < 12; + + bool shouldHaveChecked = isMorningShift ? response.Data.MorningChecked : response.Data.EveningChecked; + string shiftName = isMorningShift ? "早班" : "晚班"; + + linkLabel1.Text = shouldHaveChecked ? $"{shiftName}已打卡" : $"{shiftName}未打卡"; + linkLabel1.ForeColor = shouldHaveChecked ? Color.Green : Color.Red; + linkLabel1.LinkColor = shouldHaveChecked ? Color.Green : Color.Red; + + if (!shouldHaveChecked) { - linkLabel1.Text = "未打卡"; - linkLabel1.ForeColor = Color.Red; - linkLabel1.LinkColor = Color.Red; - bool dr = UIMessageBox.Show("你今天还未打卡哦,请先打卡吧!", "打卡提醒", UIStyle.Blue, UIMessageBoxButtons.OK); + bool dr = UIMessageBox.Show($"你的{shiftName}还未打卡哦,请先打卡吧!", "打卡提醒", UIStyle.Blue, UIMessageBoxButtons.OK); if (dr == true) { CreateEmployeeCheckInputDto workerCheck = new() @@ -411,35 +381,38 @@ namespace EOM.TSHotelManagement.FormUI CheckNumber = new UniqueCode().GetNewId("CK"), DataInsDate = DateTime.Now, IsDelete = 0, - CheckStatus = btnHello.BackgroundImage == Resources.早上 ? 0 : 1, + CheckStatus = isMorningShift ? 0 : 1, EmployeeId = LoginInfo.WorkerNo, CheckMethod = "系统界面", CheckTime = DateTime.Now, DataInsUsr = LoginInfo.WorkerNo }; + result = HttpHelper.Request(ApiConstants.EmployeeCheck_AddCheckInfo, workerCheck.ModelToJson()); - var checkResult = HttpHelper.JsonToModel(result.message); - if (checkResult.StatusCode != StatusCodeConstants.Success) + var checkResult = HttpHelper.JsonToModel(result.message); + if (checkResult.Code != BusinessStatusCode.Success) { UIMessageTip.ShowError($"打卡接口{ApiConstants.EmployeeCheck_AddCheckInfo}异常:{checkResult.Message}"); return; } + result = HttpHelper.Request(ApiConstants.EmployeeCheck_SelectWorkerCheckDaySumByEmployeeId, user); response = HttpHelper.JsonToModel>(result.message); - if (response.StatusCode != StatusCodeConstants.Success) + if (response.Code != BusinessStatusCode.Success) { UIMessageTip.ShowError($"打卡天数接口{ApiConstants.EmployeeCheck_SelectWorkerCheckDaySumByEmployeeId}异常:{response.Message}"); return; } - lblCheckDay.Text = Convert.ToString(response.Source.CheckDay); - UIMessageBox.Show("打卡成功!你已共打卡" + lblCheckDay.Text + "天,再接再厉吧!", "打卡提醒", UIStyle.Green, UIMessageBoxButtons.OK); - linkLabel1.Text = "已打卡"; + + UIMessageBox.Show($"{shiftName}打卡成功!你已共打卡" + lblCheckDay.Text + "天", "打卡提醒", UIStyle.Green, UIMessageBoxButtons.OK); + linkLabel1.Text = $"{shiftName}已打卡"; linkLabel1.ForeColor = Color.Green; linkLabel1.LinkColor = Color.Green; - pnlCheckInfo.Visible = true; - return; } } + + lblCheckDay.Text = Convert.ToString(response.Data.CheckDay); + pnlCheckInfo.Visible = true; } private void lblClose_Click(object sender, EventArgs e) @@ -466,8 +439,6 @@ namespace EOM.TSHotelManagement.FormUI private void picLogo_Click(object sender, EventArgs e) { - FrmAboutUs frmAboutUs = new FrmAboutUs(); - frmAboutUs.ShowDialog(); } private void tsmiLoginBackSystem_Click(object sender, EventArgs e) @@ -489,7 +460,6 @@ namespace EOM.TSHotelManagement.FormUI private void cpUITheme_ValueChanged(object sender, ColorEventArgs e) { AntdUI.Style.SetPrimary(e.Value); - Settings.Default["ThemeColor"] = e.Value.ToArgb().ToString("X"); Refresh(); } @@ -532,5 +502,20 @@ namespace EOM.TSHotelManagement.FormUI { AntdUI.Modal.open(this, LocalizationHelper.GetLocalizedString("Update log", "更新日志"), LoginInfo.SoftwareReleaseLog, TType.Info); } + + private void tsmiAccessOfficial_Click(object sender, EventArgs e) + { + Process.Start(new ProcessStartInfo + { + FileName = "https://www.oscode.top", + UseShellExecute = true + }); + } + + private void tsmiAbout_Click(object sender, EventArgs e) + { + FrmAbout frmAbout = new FrmAbout(); + frmAbout.ShowDialog(); + } } } diff --git a/EOM.TSHotelManagement.FormUI/AppUserControls/ucRoom.cs b/EOM.TSHotelManagement.FormUI/AppUserControls/ucRoom.cs index b03ad14..6a36dc1 100644 --- a/EOM.TSHotelManagement.FormUI/AppUserControls/ucRoom.cs +++ b/EOM.TSHotelManagement.FormUI/AppUserControls/ucRoom.cs @@ -229,12 +229,12 @@ namespace EOM.TSHotelManagement.FormUI result = HttpHelper.Request(ApiConstants.Room_SelectRoomByRoomNo, getParam); var response = HttpHelper.JsonToModel>(result.message); - if (response.StatusCode != StatusCodeConstants.Success) + if (response.Code != BusinessStatusCode.Success) { UIMessageBox.Show($"{ApiConstants.Room_SelectRoomByRoomNo}+接口服务异常!", "来自小T提示", UIStyle.Red); return; } - r = response.Source; + r = response.Data; if (r.RoomStateId == (int)Common.Core.RoomState.Vacant) { tsmiCheckIn.Enabled = true; @@ -357,7 +357,7 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Reser_SelectReserInfoByRoomNo, getParam); var reserResponse = HttpHelper.JsonToModel>(result.message); - if (reserResponse.StatusCode != StatusCodeConstants.Success) + if (reserResponse.Code != BusinessStatusCode.Success) { UIMessageBox.Show($"{ApiConstants.Reser_SelectReserInfoByRoomNo}+接口服务异常!", "来自小T提示", UIStyle.Red); return; @@ -366,11 +366,11 @@ namespace EOM.TSHotelManagement.FormUI { var reser = new DeleteReserInputDto { - ReservationId = reserResponse.Source!.ReservationId + ReservationId = reserResponse.Data!.ReservationId }; result = HttpHelper.Request(ApiConstants.Reser_DeleteReserInfo, HttpHelper.ModelToJson(reser)); - var reserResult = HttpHelper.JsonToModel(result.message); - if (reserResult.StatusCode != StatusCodeConstants.Success) + var reserResult = HttpHelper.JsonToModel(result.message); + if (reserResult.Code != BusinessStatusCode.Success) { UIMessageBox.Show($"{ApiConstants.Reser_DeleteReserInfo}+接口服务异常!", "来自小T提示", UIStyle.Red); return; diff --git a/EOM.TSHotelManagement.FormUI/EOM.TSHotelManagement.FormUI.csproj b/EOM.TSHotelManagement.FormUI/EOM.TSHotelManagement.FormUI.csproj index bd1925e..a2eddbe 100644 --- a/EOM.TSHotelManagement.FormUI/EOM.TSHotelManagement.FormUI.csproj +++ b/EOM.TSHotelManagement.FormUI/EOM.TSHotelManagement.FormUI.csproj @@ -19,9 +19,10 @@ $(SolutionDir)packages\Fody\build\Fody.targets false app.manifest + x64 - + Form diff --git a/EOM.TSHotelManagement.FormUI/Properties/Resources.Designer.cs b/EOM.TSHotelManagement.FormUI/Properties/Resources.Designer.cs index b6267e6..e5f8616 100644 --- a/EOM.TSHotelManagement.FormUI/Properties/Resources.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/Properties/Resources.Designer.cs @@ -110,6 +110,16 @@ namespace EOM.TSHotelManagement.FormUI.Properties { } } + /// + /// 查找 System.Drawing.Bitmap 类型的本地化资源。 + /// + internal static System.Drawing.Bitmap lock_screen { + get { + object obj = ResourceManager.GetObject("lock_screen", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + /// /// 查找 System.Drawing.Bitmap 类型的本地化资源。 /// diff --git a/EOM.TSHotelManagement.FormUI/Properties/Resources.resx b/EOM.TSHotelManagement.FormUI/Properties/Resources.resx index 28a3c94..87e2814 100644 --- a/EOM.TSHotelManagement.FormUI/Properties/Resources.resx +++ b/EOM.TSHotelManagement.FormUI/Properties/Resources.resx @@ -118,196 +118,199 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - ..\Resources\arrow-down-b.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\blue_refresh.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\close.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\后勤部卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\jpg_auto_04N58PICPw2s58PICaP4M8cef_PIC2018.jpg!w1024_new_small.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\picExtend.Image.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\lockicon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\修改.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\picCommodity.Image.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\普通会员.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\picCommodity.ImageHover.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\注销.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\picCustomer.Image.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\锁屏.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\picCustomer.ImageHover.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\picRoom.ImageHover.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\picExtend.Image.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\月亮.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\picExtend.ImageHover.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\打卡.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\picLogo.BackgroundImage.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\维修状态.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\picRoom.Image.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\picRoom.ImageHover.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\餐饮部卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\settings2.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\总经办卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\上传照片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\可住房icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\个人中心.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\用户登录.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\人力资源部卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\商品部卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\修改.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\上传照片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\白金会员.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\关于我们.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\内控部卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\脏房icon1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\切换账号.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\picCustomer.ImageHover.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\可住房(hover)icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\jpg_auto_04N58PICPw2s58PICaP4M8cef_PIC2018.jpg!w1024_new_small.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\可住房icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\密码.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\可住状态.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\blue_refresh.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\后勤部卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\picCommodity.Image.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\咖啡.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\picCommodity.ImageHover.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\商品部卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\财务部卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\复制.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\lockicon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\密码.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\维修部卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\已住房(hover)icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\人力资源部卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\已住房icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\切换账号.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\已住状态.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\settings2.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\常规部门卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\脏房(hover)icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\总经办卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\已住房(hover)icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\打卡.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\咖啡.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\早上.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\脏房状态.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\普通会员.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\经理部卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\月亮.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\黄金会员.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\内控部卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\检查更新 (1).png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\注销.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\个人中心.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\用户登录.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\常规部门卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\白金会员.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\酒店部卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\监管小组卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\预约状态.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\系统管理员.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\picCustomer.Image.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\经理部卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\预约房icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\维修房(hover)icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\维修房icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\转换.ico;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\维修状态.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\系统管理员.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\维修部卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\picLogo.BackgroundImage.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\脏房(hover)icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\可住房(hover)icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\脏房icon1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\close.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\脏房状态.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\早上.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\财务部卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\arrow-down-b.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\账号.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\钻石会员.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\转换.ico;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\已住状态.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\酒店部卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\可住状态.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\钻石会员.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\复制.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\锁屏.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\已住房icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\预约房(hover)icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\预约房icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\监管小组卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\预约状态.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\维修房icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\餐饮部卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\picExtend.ImageHover.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\黄金会员.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\账号.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\images\lock_screen.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/Properties/Settings.Designer.cs b/EOM.TSHotelManagement.FormUI/Properties/Settings.Designer.cs index 4abd93d..d71fbfd 100644 --- a/EOM.TSHotelManagement.FormUI/Properties/Settings.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/Properties/Settings.Designer.cs @@ -12,7 +12,7 @@ namespace EOM.TSHotelManagement.FormUI.Properties { [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.12.0.0")] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.14.0.0")] public sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); @@ -22,5 +22,14 @@ namespace EOM.TSHotelManagement.FormUI.Properties { return defaultInstance; } } + + [global::System.Configuration.ApplicationScopedSettingAttribute()] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Configuration.DefaultSettingValueAttribute("")] + public string ThemeColor { + get { + return ((string)(this["ThemeColor"])); + } + } } } diff --git a/EOM.TSHotelManagement.FormUI/Properties/Settings.settings b/EOM.TSHotelManagement.FormUI/Properties/Settings.settings index 049245f..ef0bbc8 100644 --- a/EOM.TSHotelManagement.FormUI/Properties/Settings.settings +++ b/EOM.TSHotelManagement.FormUI/Properties/Settings.settings @@ -1,6 +1,9 @@  - - - - - + + + + + + + + \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/TableComponent/TableComHelper.cs b/EOM.TSHotelManagement.FormUI/TableComponent/TableComHelper.cs index 7ab3858..57ab213 100644 --- a/EOM.TSHotelManagement.FormUI/TableComponent/TableComHelper.cs +++ b/EOM.TSHotelManagement.FormUI/TableComponent/TableComHelper.cs @@ -78,7 +78,7 @@ namespace EOM.TSHotelManagement.FormUI /// public List ConvertToAntdItems(List datas) { - var listTableSource = new List(); + var listTableData = new List(); var properties = typeof(T).GetProperties(); foreach (var data in datas) @@ -139,9 +139,9 @@ namespace EOM.TSHotelManagement.FormUI } } - listTableSource.Add(antItems.ToArray()); + listTableData.Add(antItems.ToArray()); } - return listTableSource; + return listTableData; } public string GetValue(IList items, string key) diff --git a/EOM.TSHotelManagement.FormUI/app.manifest b/EOM.TSHotelManagement.FormUI/app.manifest index 12ac6f7..3589cb8 100644 --- a/EOM.TSHotelManagement.FormUI/app.manifest +++ b/EOM.TSHotelManagement.FormUI/app.manifest @@ -4,18 +4,6 @@ - @@ -23,25 +11,6 @@ - - - - - - - - - - - - - - - - - diff --git a/EOM.TSHotelManagement.FormUI/images/lock_screen.png b/EOM.TSHotelManagement.FormUI/images/lock_screen.png new file mode 100644 index 0000000000000000000000000000000000000000..8c7fa3d1c99b261c3143fb1d9a2bcaf20c38d0d0 GIT binary patch literal 318119 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�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 literal 0 HcmV?d00001 diff --git a/topsky-hotel-management-system-web-api b/topsky-hotel-management-system-web-api index 1f277e6..5d698fe 160000 --- a/topsky-hotel-management-system-web-api +++ b/topsky-hotel-management-system-web-api @@ -1 +1 @@ -Subproject commit 1f277e6ed986829d433ae3a37d1a00b67cd354b7 +Subproject commit 5d698fe1810358f549aecfc46ff6730b0679569f -- Gitee From df6f8e3931fef97c8ee447df1721598c767e61ed Mon Sep 17 00:00:00 2001 From: ck_yeun9 Date: Sat, 9 Aug 2025 17:09:55 +0800 Subject: [PATCH 06/15] add submodule. --- topsky-hotel-management-system-web-api | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/topsky-hotel-management-system-web-api b/topsky-hotel-management-system-web-api index 5d698fe..825d34f 160000 --- a/topsky-hotel-management-system-web-api +++ b/topsky-hotel-management-system-web-api @@ -1 +1 @@ -Subproject commit 5d698fe1810358f549aecfc46ff6730b0679569f +Subproject commit 825d34f97870fede73a8904ab145da5d2facd33b -- Gitee From 45f7910ac0f9212a833e7fd22d2ad1bf14c95a88 Mon Sep 17 00:00:00 2001 From: ck_yeun9 Date: Sat, 9 Aug 2025 17:13:04 +0800 Subject: [PATCH 07/15] fix --- EOM.TSHotelManagement.FormUI/AppFunction/FrmAbout.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmAbout.cs b/EOM.TSHotelManagement.FormUI/AppFunction/FrmAbout.cs index c5f8796..80062be 100644 --- a/EOM.TSHotelManagement.FormUI/AppFunction/FrmAbout.cs +++ b/EOM.TSHotelManagement.FormUI/AppFunction/FrmAbout.cs @@ -69,7 +69,7 @@ namespace EOM.TSHotelManagement.FormUI { lblSoftName.Text = $"{ApplicationUtil.GetApplicationName()}"; lblClientVersionDescriotion.Text = LocalizationHelper.GetLocalizedString("Client Version:", "客户端版本:"); - lblClientVersion.Text = $"{ApplicationUtil.GetApplicationVersion()}({ApplicationUtil.GetSystemArchitectureViaEnv()})"; + lblClientVersion.Text = $"{ApplicationUtil.GetApplicationVersion()} ({ApplicationUtil.GetSystemArchitectureViaEnv()})"; lblServerVersionDescriotion.Text = LocalizationHelper.GetLocalizedString("Server Version:", "服务端版本:"); lblServerVersion.Text = $"{ApplicationUtil.GetServerVersion()}"; lblFrameworkVersionDescription.Text = LocalizationHelper.GetLocalizedString("Framework Version:", "框架版本:"); -- Gitee From 8568af885474dfb95dfcecc0fc590dae83fb56f4 Mon Sep 17 00:00:00 2001 From: ck_yeun9 Date: Sat, 9 Aug 2025 19:41:04 +0800 Subject: [PATCH 08/15] add submodule. fix employee check logic. --- EOM.TSHotelManagement.FormUI/AppMain/FrmMain.cs | 2 +- topsky-hotel-management-system-web-api | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/EOM.TSHotelManagement.FormUI/AppMain/FrmMain.cs b/EOM.TSHotelManagement.FormUI/AppMain/FrmMain.cs index ee6b9d8..707a46d 100644 --- a/EOM.TSHotelManagement.FormUI/AppMain/FrmMain.cs +++ b/EOM.TSHotelManagement.FormUI/AppMain/FrmMain.cs @@ -276,7 +276,6 @@ namespace EOM.TSHotelManagement.FormUI } pnlCheckInfo.Visible = false; - checkEmployeeCheckInfo(); notifyIcon1.Text = "TS酒店管理系统-" + LoginInfo.WorkerName + "-版本号:" + ApplicationUtil.GetApplicationVersion(); wk_WorkerName = LoginInfo.WorkerName; @@ -288,6 +287,7 @@ namespace EOM.TSHotelManagement.FormUI pnlMID.Controls.Add(frmRoomManager); frmRoomManager.Show(); + checkEmployeeCheckInfo(); } #endregion diff --git a/topsky-hotel-management-system-web-api b/topsky-hotel-management-system-web-api index 825d34f..30baeee 160000 --- a/topsky-hotel-management-system-web-api +++ b/topsky-hotel-management-system-web-api @@ -1 +1 @@ -Subproject commit 825d34f97870fede73a8904ab145da5d2facd33b +Subproject commit 30baeee06bb4ba5ee41d20198b63a7c4a7b9726c -- Gitee From ba41863d9be9ed3578d6beec5c9cee5775c1ddce Mon Sep 17 00:00:00 2001 From: ck_yeun9 Date: Fri, 15 Aug 2025 23:11:42 +0800 Subject: [PATCH 09/15] Rename folder name. add submodule. --- EOM.Client.TopSkyHotelManagementSystem.sln | 46 ++- .../ucNavBar.Designer.cs | 0 .../ucNavBar.cs | 0 .../ucNavBar.resx | 0 .../ucRoom.Designer.cs | 0 .../ucRoom.cs | 0 .../ucRoom.resx | 0 .../ucRoomType.Designer.cs | 0 .../ucRoomType.cs | 0 .../ucRoomType.resx | 0 .../FrmLoading.Designer.cs | 0 .../FrmLoading.cs | 0 .../FrmLoading.resx | 0 .../FrmLogin.Designer.cs | 0 .../FrmLogin.cs | 0 .../FrmLogin.resx | 0 .../FrmMain.Designer.cs | 0 .../{AppMain => ClientMain}/FrmMain.cs | 0 .../{AppMain => ClientMain}/FrmMain.resx | 0 .../FrmAbout.Designer.cs | 0 .../{AppFunction => ClientModule}/FrmAbout.cs | 0 .../FrmAbout.resx | 0 .../FrmChangeRoom.Designer.cs | 0 .../FrmChangeRoom.cs | 0 .../FrmChangeRoom.resx | 0 .../FrmCheckIn.Designer.cs | 0 .../FrmCheckIn.cs | 0 .../FrmCheckIn.resx | 0 .../FrmCheckOutForm.Designer.cs | 0 .../FrmCheckOutForm.cs | 0 .../FrmCheckOutForm.resx | 0 .../FrmCustomerManagement.Designer.cs | 0 .../FrmCustomerManagement.cs | 0 .../FrmCustomerManagement.resx | 0 .../FrmEditInputs.Designer.cs | 0 .../FrmEditInputs.cs | 0 .../FrmEditInputs.resx | 0 .../FrmMySpace.Designer.cs | 0 .../FrmMySpace.cs | 0 .../FrmMySpace.resx | 0 .../FrmProgress.Designer.cs | 0 .../FrmProgress.cs | 0 .../FrmProgress.resx | 0 .../FrmReserList.Designer.cs | 0 .../FrmReserList.cs | 0 .../FrmReserList.resx | 0 .../FrmReserManagement.Designer.cs | 0 .../FrmReserManagement.cs | 0 .../FrmReserManagement.resx | 0 .../FrmRoomManagement.Designer.cs | 0 .../FrmRoomManagement.cs | 0 .../FrmRoomManagement.resx | 0 .../FrmRoomStateManagement.Designer.cs | 0 .../FrmRoomStateManagement.cs | 0 .../FrmRoomStateManagement.resx | 0 .../FrmScreenLock.Designer.cs | 0 .../FrmScreenLock.cs | 0 .../FrmScreenLock.resx | 0 .../FrmSelectCustoInfo.Designer.cs | 0 .../FrmSelectCustoInfo.cs | 0 .../FrmSelectCustoInfo.resx | 0 .../FrmSellThing.Designer.cs | 0 .../FrmSellThing.cs | 0 .../FrmSellThing.resx | 0 .../EOM.TSHotelManagement.FormUI.csproj | 56 +-- .../EOM.TSHotelManagement.Common.Contract.xml | 372 ++++++++++++++++-- topsky-hotel-management-system-web-api | 2 +- 67 files changed, 403 insertions(+), 73 deletions(-) rename EOM.TSHotelManagement.FormUI/{AppUserControls => ClientCustomControls}/ucNavBar.Designer.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppUserControls => ClientCustomControls}/ucNavBar.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppUserControls => ClientCustomControls}/ucNavBar.resx (100%) rename EOM.TSHotelManagement.FormUI/{AppUserControls => ClientCustomControls}/ucRoom.Designer.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppUserControls => ClientCustomControls}/ucRoom.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppUserControls => ClientCustomControls}/ucRoom.resx (100%) rename EOM.TSHotelManagement.FormUI/{AppUserControls => ClientCustomControls}/ucRoomType.Designer.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppUserControls => ClientCustomControls}/ucRoomType.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppUserControls => ClientCustomControls}/ucRoomType.resx (100%) rename EOM.TSHotelManagement.FormUI/{AppInterface => ClientEntrance}/FrmLoading.Designer.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppInterface => ClientEntrance}/FrmLoading.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppInterface => ClientEntrance}/FrmLoading.resx (100%) rename EOM.TSHotelManagement.FormUI/{AppInterface => ClientEntrance}/FrmLogin.Designer.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppInterface => ClientEntrance}/FrmLogin.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppInterface => ClientEntrance}/FrmLogin.resx (100%) rename EOM.TSHotelManagement.FormUI/{AppMain => ClientMain}/FrmMain.Designer.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppMain => ClientMain}/FrmMain.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppMain => ClientMain}/FrmMain.resx (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmAbout.Designer.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmAbout.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmAbout.resx (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmChangeRoom.Designer.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmChangeRoom.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmChangeRoom.resx (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmCheckIn.Designer.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmCheckIn.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmCheckIn.resx (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmCheckOutForm.Designer.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmCheckOutForm.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmCheckOutForm.resx (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmCustomerManagement.Designer.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmCustomerManagement.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmCustomerManagement.resx (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmEditInputs.Designer.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmEditInputs.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmEditInputs.resx (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmMySpace.Designer.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmMySpace.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmMySpace.resx (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmProgress.Designer.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmProgress.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmProgress.resx (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmReserList.Designer.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmReserList.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmReserList.resx (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmReserManagement.Designer.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmReserManagement.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmReserManagement.resx (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmRoomManagement.Designer.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmRoomManagement.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmRoomManagement.resx (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmRoomStateManagement.Designer.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmRoomStateManagement.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmRoomStateManagement.resx (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmScreenLock.Designer.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmScreenLock.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmScreenLock.resx (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmSelectCustoInfo.Designer.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmSelectCustoInfo.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmSelectCustoInfo.resx (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmSellThing.Designer.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmSellThing.cs (100%) rename EOM.TSHotelManagement.FormUI/{AppFunction => ClientModule}/FrmSellThing.resx (100%) diff --git a/EOM.Client.TopSkyHotelManagementSystem.sln b/EOM.Client.TopSkyHotelManagementSystem.sln index b8440f0..98c469c 100644 --- a/EOM.Client.TopSkyHotelManagementSystem.sln +++ b/EOM.Client.TopSkyHotelManagementSystem.sln @@ -2,7 +2,7 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio Version 17 VisualStudioVersion = 17.4.33213.308 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Api", "Api", "{6A3E4936-8B95-49E0-842B-E002C0E024CE}" +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Server", "Server", "{6A3E4936-8B95-49E0-842B-E002C0E024CE}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Client", "Client", "{3B8902EC-CAB9-406A-AAF7-24DABD885AC0}" EndProject @@ -29,49 +29,89 @@ EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 Release|x64 = Release|x64 + Release|x86 = Release|x86 EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {B55975AB-2C89-4C01-B107-D87FCA21A5E3}.Debug|x64.ActiveCfg = Debug|x64 {B55975AB-2C89-4C01-B107-D87FCA21A5E3}.Debug|x64.Build.0 = Debug|x64 + {B55975AB-2C89-4C01-B107-D87FCA21A5E3}.Debug|x86.ActiveCfg = Debug|x64 + {B55975AB-2C89-4C01-B107-D87FCA21A5E3}.Debug|x86.Build.0 = Debug|x64 {B55975AB-2C89-4C01-B107-D87FCA21A5E3}.Release|x64.ActiveCfg = Release|x64 - {B55975AB-2C89-4C01-B107-D87FCA21A5E3}.Release|x64.Build.0 = Release|x64 + {B55975AB-2C89-4C01-B107-D87FCA21A5E3}.Release|x86.ActiveCfg = Release|x86 + {B55975AB-2C89-4C01-B107-D87FCA21A5E3}.Release|x86.Build.0 = Release|x86 {8F5CF88A-1111-44CC-AFFA-4637EA10E191}.Debug|x64.ActiveCfg = Debug|x64 {8F5CF88A-1111-44CC-AFFA-4637EA10E191}.Debug|x64.Build.0 = Debug|x64 + {8F5CF88A-1111-44CC-AFFA-4637EA10E191}.Debug|x86.ActiveCfg = Debug|x64 + {8F5CF88A-1111-44CC-AFFA-4637EA10E191}.Debug|x86.Build.0 = Debug|x64 {8F5CF88A-1111-44CC-AFFA-4637EA10E191}.Release|x64.ActiveCfg = Release|x64 {8F5CF88A-1111-44CC-AFFA-4637EA10E191}.Release|x64.Build.0 = Release|x64 + {8F5CF88A-1111-44CC-AFFA-4637EA10E191}.Release|x86.ActiveCfg = Release|x64 + {8F5CF88A-1111-44CC-AFFA-4637EA10E191}.Release|x86.Build.0 = Release|x64 {566D7064-EA90-45C1-93B7-F512BBAD7BA1}.Debug|x64.ActiveCfg = Debug|x64 {566D7064-EA90-45C1-93B7-F512BBAD7BA1}.Debug|x64.Build.0 = Debug|x64 + {566D7064-EA90-45C1-93B7-F512BBAD7BA1}.Debug|x86.ActiveCfg = Debug|x64 + {566D7064-EA90-45C1-93B7-F512BBAD7BA1}.Debug|x86.Build.0 = Debug|x64 {566D7064-EA90-45C1-93B7-F512BBAD7BA1}.Release|x64.ActiveCfg = Release|x64 {566D7064-EA90-45C1-93B7-F512BBAD7BA1}.Release|x64.Build.0 = Release|x64 + {566D7064-EA90-45C1-93B7-F512BBAD7BA1}.Release|x86.ActiveCfg = Release|x64 + {566D7064-EA90-45C1-93B7-F512BBAD7BA1}.Release|x86.Build.0 = Release|x64 {48B3F864-88D2-4BD1-A766-B9EBF342AED1}.Debug|x64.ActiveCfg = Debug|x64 {48B3F864-88D2-4BD1-A766-B9EBF342AED1}.Debug|x64.Build.0 = Debug|x64 + {48B3F864-88D2-4BD1-A766-B9EBF342AED1}.Debug|x86.ActiveCfg = Debug|x64 + {48B3F864-88D2-4BD1-A766-B9EBF342AED1}.Debug|x86.Build.0 = Debug|x64 {48B3F864-88D2-4BD1-A766-B9EBF342AED1}.Release|x64.ActiveCfg = Release|x64 {48B3F864-88D2-4BD1-A766-B9EBF342AED1}.Release|x64.Build.0 = Release|x64 + {48B3F864-88D2-4BD1-A766-B9EBF342AED1}.Release|x86.ActiveCfg = Release|x64 + {48B3F864-88D2-4BD1-A766-B9EBF342AED1}.Release|x86.Build.0 = Release|x64 {9A62B6BE-7C26-465F-A8D1-2CEE66D6F837}.Debug|x64.ActiveCfg = Debug|x64 {9A62B6BE-7C26-465F-A8D1-2CEE66D6F837}.Debug|x64.Build.0 = Debug|x64 + {9A62B6BE-7C26-465F-A8D1-2CEE66D6F837}.Debug|x86.ActiveCfg = Debug|x64 + {9A62B6BE-7C26-465F-A8D1-2CEE66D6F837}.Debug|x86.Build.0 = Debug|x64 {9A62B6BE-7C26-465F-A8D1-2CEE66D6F837}.Release|x64.ActiveCfg = Release|x64 {9A62B6BE-7C26-465F-A8D1-2CEE66D6F837}.Release|x64.Build.0 = Release|x64 + {9A62B6BE-7C26-465F-A8D1-2CEE66D6F837}.Release|x86.ActiveCfg = Release|x64 + {9A62B6BE-7C26-465F-A8D1-2CEE66D6F837}.Release|x86.Build.0 = Release|x64 {781CEE04-DDB4-4037-8175-9A6548716871}.Debug|x64.ActiveCfg = Debug|x64 {781CEE04-DDB4-4037-8175-9A6548716871}.Debug|x64.Build.0 = Debug|x64 + {781CEE04-DDB4-4037-8175-9A6548716871}.Debug|x86.ActiveCfg = Debug|x64 + {781CEE04-DDB4-4037-8175-9A6548716871}.Debug|x86.Build.0 = Debug|x64 {781CEE04-DDB4-4037-8175-9A6548716871}.Release|x64.ActiveCfg = Release|x64 {781CEE04-DDB4-4037-8175-9A6548716871}.Release|x64.Build.0 = Release|x64 + {781CEE04-DDB4-4037-8175-9A6548716871}.Release|x86.ActiveCfg = Release|x64 + {781CEE04-DDB4-4037-8175-9A6548716871}.Release|x86.Build.0 = Release|x64 {D89E76F5-007B-4915-91A8-265CCA6814BF}.Debug|x64.ActiveCfg = Debug|x64 {D89E76F5-007B-4915-91A8-265CCA6814BF}.Debug|x64.Build.0 = Debug|x64 + {D89E76F5-007B-4915-91A8-265CCA6814BF}.Debug|x86.ActiveCfg = Debug|x64 + {D89E76F5-007B-4915-91A8-265CCA6814BF}.Debug|x86.Build.0 = Debug|x64 {D89E76F5-007B-4915-91A8-265CCA6814BF}.Release|x64.ActiveCfg = Release|x64 {D89E76F5-007B-4915-91A8-265CCA6814BF}.Release|x64.Build.0 = Release|x64 + {D89E76F5-007B-4915-91A8-265CCA6814BF}.Release|x86.ActiveCfg = Release|x64 + {D89E76F5-007B-4915-91A8-265CCA6814BF}.Release|x86.Build.0 = Release|x64 {1A37446C-A721-4507-89B5-7BFF6F66A004}.Debug|x64.ActiveCfg = Debug|x64 {1A37446C-A721-4507-89B5-7BFF6F66A004}.Debug|x64.Build.0 = Debug|x64 + {1A37446C-A721-4507-89B5-7BFF6F66A004}.Debug|x86.ActiveCfg = Debug|x64 + {1A37446C-A721-4507-89B5-7BFF6F66A004}.Debug|x86.Build.0 = Debug|x64 {1A37446C-A721-4507-89B5-7BFF6F66A004}.Release|x64.ActiveCfg = Release|x64 {1A37446C-A721-4507-89B5-7BFF6F66A004}.Release|x64.Build.0 = Release|x64 + {1A37446C-A721-4507-89B5-7BFF6F66A004}.Release|x86.ActiveCfg = Release|x64 + {1A37446C-A721-4507-89B5-7BFF6F66A004}.Release|x86.Build.0 = Release|x64 {7E8046FD-4CB3-4BBC-8ADD-E27FE3DBBB55}.Debug|x64.ActiveCfg = Debug|x64 {7E8046FD-4CB3-4BBC-8ADD-E27FE3DBBB55}.Debug|x64.Build.0 = Debug|x64 + {7E8046FD-4CB3-4BBC-8ADD-E27FE3DBBB55}.Debug|x86.ActiveCfg = Debug|x64 + {7E8046FD-4CB3-4BBC-8ADD-E27FE3DBBB55}.Debug|x86.Build.0 = Debug|x64 {7E8046FD-4CB3-4BBC-8ADD-E27FE3DBBB55}.Release|x64.ActiveCfg = Release|x64 - {7E8046FD-4CB3-4BBC-8ADD-E27FE3DBBB55}.Release|x64.Build.0 = Release|x64 + {7E8046FD-4CB3-4BBC-8ADD-E27FE3DBBB55}.Release|x86.ActiveCfg = Release|x86 + {7E8046FD-4CB3-4BBC-8ADD-E27FE3DBBB55}.Release|x86.Build.0 = Release|x86 {A1A986E0-E59D-4913-B63E-D965453B8CC0}.Debug|x64.ActiveCfg = Debug|x64 {A1A986E0-E59D-4913-B63E-D965453B8CC0}.Debug|x64.Build.0 = Debug|x64 + {A1A986E0-E59D-4913-B63E-D965453B8CC0}.Debug|x86.ActiveCfg = Debug|x64 + {A1A986E0-E59D-4913-B63E-D965453B8CC0}.Debug|x86.Build.0 = Debug|x64 {A1A986E0-E59D-4913-B63E-D965453B8CC0}.Release|x64.ActiveCfg = Release|x64 {A1A986E0-E59D-4913-B63E-D965453B8CC0}.Release|x64.Build.0 = Release|x64 + {A1A986E0-E59D-4913-B63E-D965453B8CC0}.Release|x86.ActiveCfg = Release|x64 + {A1A986E0-E59D-4913-B63E-D965453B8CC0}.Release|x86.Build.0 = Release|x64 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/EOM.TSHotelManagement.FormUI/AppUserControls/ucNavBar.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucNavBar.Designer.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppUserControls/ucNavBar.Designer.cs rename to EOM.TSHotelManagement.FormUI/ClientCustomControls/ucNavBar.Designer.cs diff --git a/EOM.TSHotelManagement.FormUI/AppUserControls/ucNavBar.cs b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucNavBar.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppUserControls/ucNavBar.cs rename to EOM.TSHotelManagement.FormUI/ClientCustomControls/ucNavBar.cs diff --git a/EOM.TSHotelManagement.FormUI/AppUserControls/ucNavBar.resx b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucNavBar.resx similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppUserControls/ucNavBar.resx rename to EOM.TSHotelManagement.FormUI/ClientCustomControls/ucNavBar.resx diff --git a/EOM.TSHotelManagement.FormUI/AppUserControls/ucRoom.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.Designer.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppUserControls/ucRoom.Designer.cs rename to EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.Designer.cs diff --git a/EOM.TSHotelManagement.FormUI/AppUserControls/ucRoom.cs b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppUserControls/ucRoom.cs rename to EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.cs diff --git a/EOM.TSHotelManagement.FormUI/AppUserControls/ucRoom.resx b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.resx similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppUserControls/ucRoom.resx rename to EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.resx diff --git a/EOM.TSHotelManagement.FormUI/AppUserControls/ucRoomType.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoomType.Designer.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppUserControls/ucRoomType.Designer.cs rename to EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoomType.Designer.cs diff --git a/EOM.TSHotelManagement.FormUI/AppUserControls/ucRoomType.cs b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoomType.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppUserControls/ucRoomType.cs rename to EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoomType.cs diff --git a/EOM.TSHotelManagement.FormUI/AppUserControls/ucRoomType.resx b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoomType.resx similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppUserControls/ucRoomType.resx rename to EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoomType.resx diff --git a/EOM.TSHotelManagement.FormUI/AppInterface/FrmLoading.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.Designer.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppInterface/FrmLoading.Designer.cs rename to EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.Designer.cs diff --git a/EOM.TSHotelManagement.FormUI/AppInterface/FrmLoading.cs b/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppInterface/FrmLoading.cs rename to EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.cs diff --git a/EOM.TSHotelManagement.FormUI/AppInterface/FrmLoading.resx b/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.resx similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppInterface/FrmLoading.resx rename to EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.resx diff --git a/EOM.TSHotelManagement.FormUI/AppInterface/FrmLogin.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLogin.Designer.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppInterface/FrmLogin.Designer.cs rename to EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLogin.Designer.cs diff --git a/EOM.TSHotelManagement.FormUI/AppInterface/FrmLogin.cs b/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLogin.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppInterface/FrmLogin.cs rename to EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLogin.cs diff --git a/EOM.TSHotelManagement.FormUI/AppInterface/FrmLogin.resx b/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLogin.resx similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppInterface/FrmLogin.resx rename to EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLogin.resx diff --git a/EOM.TSHotelManagement.FormUI/AppMain/FrmMain.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.Designer.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppMain/FrmMain.Designer.cs rename to EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.Designer.cs diff --git a/EOM.TSHotelManagement.FormUI/AppMain/FrmMain.cs b/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppMain/FrmMain.cs rename to EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.cs diff --git a/EOM.TSHotelManagement.FormUI/AppMain/FrmMain.resx b/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.resx similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppMain/FrmMain.resx rename to EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.resx diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmAbout.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAbout.Designer.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmAbout.Designer.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmAbout.Designer.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmAbout.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAbout.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmAbout.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmAbout.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmAbout.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAbout.resx similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmAbout.resx rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmAbout.resx diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmChangeRoom.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.Designer.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmChangeRoom.Designer.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.Designer.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmChangeRoom.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmChangeRoom.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmChangeRoom.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.resx similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmChangeRoom.resx rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.resx diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmCheckIn.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckIn.Designer.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmCheckIn.Designer.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckIn.Designer.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmCheckIn.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckIn.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmCheckIn.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckIn.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmCheckIn.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckIn.resx similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmCheckIn.resx rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckIn.resx diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmCheckOutForm.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutForm.Designer.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmCheckOutForm.Designer.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutForm.Designer.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmCheckOutForm.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutForm.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmCheckOutForm.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutForm.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmCheckOutForm.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutForm.resx similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmCheckOutForm.resx rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutForm.resx diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmCustomerManagement.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerManagement.Designer.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmCustomerManagement.Designer.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerManagement.Designer.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmCustomerManagement.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerManagement.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmCustomerManagement.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerManagement.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmCustomerManagement.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerManagement.resx similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmCustomerManagement.resx rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerManagement.resx diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmEditInputs.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmEditInputs.Designer.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmEditInputs.Designer.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmEditInputs.Designer.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmEditInputs.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmEditInputs.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmEditInputs.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmEditInputs.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmEditInputs.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmEditInputs.resx similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmEditInputs.resx rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmEditInputs.resx diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmMySpace.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.Designer.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmMySpace.Designer.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.Designer.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmMySpace.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmMySpace.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmMySpace.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.resx similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmMySpace.resx rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.resx diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmProgress.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmProgress.Designer.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmProgress.Designer.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmProgress.Designer.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmProgress.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmProgress.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmProgress.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmProgress.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmProgress.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmProgress.resx similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmProgress.resx rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmProgress.resx diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmReserList.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserList.Designer.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmReserList.Designer.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmReserList.Designer.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmReserList.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserList.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmReserList.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmReserList.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmReserList.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserList.resx similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmReserList.resx rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmReserList.resx diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmReserManagement.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserManagement.Designer.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmReserManagement.Designer.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmReserManagement.Designer.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmReserManagement.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserManagement.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmReserManagement.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmReserManagement.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmReserManagement.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserManagement.resx similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmReserManagement.resx rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmReserManagement.resx diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmRoomManagement.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomManagement.Designer.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmRoomManagement.Designer.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomManagement.Designer.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmRoomManagement.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomManagement.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmRoomManagement.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomManagement.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmRoomManagement.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomManagement.resx similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmRoomManagement.resx rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomManagement.resx diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmRoomStateManagement.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomStateManagement.Designer.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmRoomStateManagement.Designer.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomStateManagement.Designer.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmRoomStateManagement.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomStateManagement.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmRoomStateManagement.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomStateManagement.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmRoomStateManagement.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomStateManagement.resx similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmRoomStateManagement.resx rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomStateManagement.resx diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmScreenLock.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmScreenLock.Designer.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmScreenLock.Designer.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmScreenLock.Designer.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmScreenLock.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmScreenLock.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmScreenLock.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmScreenLock.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmScreenLock.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmScreenLock.resx similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmScreenLock.resx rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmScreenLock.resx diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmSelectCustoInfo.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmSelectCustoInfo.Designer.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmSelectCustoInfo.Designer.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmSelectCustoInfo.Designer.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmSelectCustoInfo.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmSelectCustoInfo.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmSelectCustoInfo.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmSelectCustoInfo.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmSelectCustoInfo.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmSelectCustoInfo.resx similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmSelectCustoInfo.resx rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmSelectCustoInfo.resx diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmSellThing.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.Designer.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmSellThing.Designer.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.Designer.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmSellThing.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.cs similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmSellThing.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.cs diff --git a/EOM.TSHotelManagement.FormUI/AppFunction/FrmSellThing.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.resx similarity index 100% rename from EOM.TSHotelManagement.FormUI/AppFunction/FrmSellThing.resx rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.resx diff --git a/EOM.TSHotelManagement.FormUI/EOM.TSHotelManagement.FormUI.csproj b/EOM.TSHotelManagement.FormUI/EOM.TSHotelManagement.FormUI.csproj index a2eddbe..f372872 100644 --- a/EOM.TSHotelManagement.FormUI/EOM.TSHotelManagement.FormUI.csproj +++ b/EOM.TSHotelManagement.FormUI/EOM.TSHotelManagement.FormUI.csproj @@ -11,7 +11,7 @@ true enable true - 2.8.5.2 + 2.8.5.3 EOM.TSHotelManagement.FormUI.Program x64 TS酒店管理系统 @@ -22,7 +22,7 @@ x64 - + Form @@ -31,26 +31,26 @@ Form - + Form - + Form - + Form Form - + Form - + Form - + Form @@ -62,10 +62,10 @@ Form - + Form - + Form @@ -74,22 +74,22 @@ Form - + Form - + Form - + Form - + UserControl - + UserControl - + UserControl @@ -132,18 +132,18 @@ - - - - - - - - - - - - + + + + + + + + + + + + diff --git a/EOM.TSHotelManagement.FormUI/Resources/EOM.TSHotelManagement.Common.Contract.xml b/EOM.TSHotelManagement.FormUI/Resources/EOM.TSHotelManagement.Common.Contract.xml index c501ed3..22f5b6d 100644 --- a/EOM.TSHotelManagement.FormUI/Resources/EOM.TSHotelManagement.Common.Contract.xml +++ b/EOM.TSHotelManagement.FormUI/Resources/EOM.TSHotelManagement.Common.Contract.xml @@ -4,58 +4,153 @@ EOM.TSHotelManagement.Common.Contract - + - Token + 资料创建人 - + - 删除标识 + 资料创建时间 - + - 资料创建人 + 资料更新人 - + - 资料创建时间 + 资料更新时间 - + - 资料更新人 + Token - + - 资料更新时间 + 删除标识 - + - 状态码,例如 200 表示成功,500 表示服务器错误,400 表示客户端错误等 + 状态码,例如 0 表示成功 - + 返回消息,用于描述请求结果 - + - + 带状态码和消息的构造函数 状态码 消息 + + + 请求成功 + + + + + 创建成功(常用于 POST 请求) + + + + + 已接受(请求已接收但未处理完成) + + + + + 无内容(响应体为空) + + + + + 永久重定向 + + + + + 临时重定向 + + + + + 查看其他地址(常用于 POST 后重定向) + + + + + 资源未修改(缓存用) + + + + + 错误请求(参数或格式错误) + + + + + 未授权(身份验证失败) + + + + + 禁止访问(无权限) + + + + + 未找到资源 + + + + + 方法不允许(如 GET 接口用 POST 访问) + + + + + 请求超时 + + + + + 资源冲突(如重复提交) + + + + + 服务器内部错误 + + + + + 网关错误(上游服务异常) + + + + + 服务不可用(维护或过载) + + + + + 网关超时(上游服务响应超时) + + 页数 @@ -76,21 +171,96 @@ 带总数的列表输出Dto - + 数据源 - + - 总数 + 菜单 + + + + + 菜单主键 (Menu Key) + + + + + 菜单标题 (Menu Title) + + + + + 菜单路径 (Menu Path) + + + + + 图标 + + + + + 子菜单 (Child Menus) - + 数据源 + + + 账号 (Account) + + + + + 密码 (Password) + + + + + 邮箱 (Email) + + + + + 账号 (Account) + + + + + 邮箱 (Email) + + + + + 名称 (Name) + + + + + 密码 (Password) + + + + + 状态 (Status) + + + + + 最后一次登录地址 (Last Login IP) + + + + + 最后一次登录时间 (Last Login Time) + + 客户类型 (Customer Type) @@ -101,6 +271,11 @@ 客户类型名称 (Customer Type Name) + + + 优惠折扣 + + 打卡编号 (Check-in/Check-out Number) @@ -136,6 +311,76 @@ 管理员类型名称 (Administrator Type Name) + + + 公告类型编号 (AppointmentNotice Type Number) + + + + + 公告类型名称 (AppointmentNotice Type Name) + + + + + 公告类型编号 (AppointmentNotice Type Number) + + + + + 公告类型编号 (AppointmentNotice Type Number) + + + + + 公告类型名称 (AppointmentNotice Type Name) + + + + + 公告类型编号 (AppointmentNotice Type Number) + + + + + 公告类型名称 (AppointmentNotice Type Name) + + + + + 删除标识 + + + + + 资料创建人 + + + + + 资料创建时间 + + + + + 资料更新人 + + + + + 资料更新时间 + + + + + 公告类型编号 (AppointmentNotice Type Number) + + + + + 公告类型名称 (AppointmentNotice Type Name) + + 菜单视图模型 (Menu View Model) @@ -216,26 +461,6 @@ 系统管理 - - - 模块ID (Module ID) - - - - - 管理员账号 (Administrator Account) - - - - - 模块名称 (Module Name) - - - - - 是否开启 (Is Enabled) - - 备 注:角色编码 @@ -344,5 +569,70 @@ 异常堆栈 (Exception Stack Trace) + + + 请求路径 (URL Path) + + + + + HTTP方法 (GET/POST等) + + + + + 请求IP地址 + + + + + 请求参数 + + + + + HTTP状态码 + + + + + 请求时长(毫秒) + + + + + 用户代理 (浏览器信息) + + + + + 用户名 (未登录则为空) + + + + + 异常信息 + + + + + 请求时间 (自动设置为当前时间) + + + + + 响应大小(字节) + + + + + API操作描述 + + + + + 软件版本 + + diff --git a/topsky-hotel-management-system-web-api b/topsky-hotel-management-system-web-api index 30baeee..16cd5be 160000 --- a/topsky-hotel-management-system-web-api +++ b/topsky-hotel-management-system-web-api @@ -1 +1 @@ -Subproject commit 30baeee06bb4ba5ee41d20198b63a7c4a7b9726c +Subproject commit 16cd5be9df042e2453d302e13e4374923d2e6993 -- Gitee From 8eab817a7fd72b1f24f270c3c3493ef81225fcf6 Mon Sep 17 00:00:00 2001 From: ck_yeun9 Date: Sat, 16 Aug 2025 18:07:13 +0800 Subject: [PATCH 10/15] Replace UI Control to AntdUI. remove no use nuget package. remove no use UserControls. add new backend api. --- .../BackendApi/ApiConstants.cs | 1 + .../EOM.TSHotelManagement.Common.csproj | 2 - .../Helper/HttpHelper.cs | 44 -- .../UIMessageConstant.cs | 26 + .../Util/RecordHelper.cs | 3 +- .../ClientCustomControls/ucNavBar.Designer.cs | 47 -- .../ClientCustomControls/ucNavBar.cs | 33 - .../ClientCustomControls/ucRoom.cs | 45 +- .../ucRoomType.Designer.cs | 23 +- .../ClientCustomControls/ucRoomType.resx | 4 +- .../ucWindowHeader.Designer.cs | 119 ++++ .../ClientCustomControls/ucWindowHeader.cs | 45 ++ .../ClientCustomControls/ucWindowHeader.resx | 139 ++++ .../ClientEntrance/FrmLogin.cs | 2 +- .../ClientMain/FrmMain.cs | 20 +- .../ClientModule/FrmAbout.Designer.cs | 26 +- .../ClientModule/FrmAbout.cs | 3 + .../FrmAccountSecurity.Designer.cs | 146 +++++ .../ClientModule/FrmAccountSecurity.cs | 59 ++ .../ClientModule/FrmAccountSecurity.resx | 157 +++++ .../ClientModule/FrmAvator.Designer.cs | 85 +++ .../ClientModule/FrmAvator.cs | 93 +++ .../ClientModule/FrmAvator.resx | 123 ++++ .../ClientModule/FrmChangeRoom.cs | 2 +- .../ClientModule/FrmCheckIn.cs | 5 +- .../ClientModule/FrmCheckOutForm.cs | 21 +- ...esigner.cs => FrmCustomerInfo.Designer.cs} | 4 +- ...mSelectCustoInfo.cs => FrmCustomerInfo.cs} | 4 +- ...ectCustoInfo.resx => FrmCustomerInfo.resx} | 0 .../ClientModule/FrmCustomerManagement.cs | 2 +- .../ClientModule/FrmEditInputs.Designer.cs | 552 +++++++--------- .../ClientModule/FrmEditInputs.cs | 166 ++--- .../ClientModule/FrmEditInputs.resx | 54 +- .../ClientModule/FrmMySpace.Designer.cs | 593 +++--------------- .../ClientModule/FrmMySpace.cs | 301 +-------- .../ClientModule/FrmMySpace.resx | 39 -- .../ClientModule/FrmPersonnelInfo.Designer.cs | 268 ++++++++ .../ClientModule/FrmPersonnelInfo.cs | 194 ++++++ .../FrmPersonnelInfo.resx} | 4 +- .../ClientModule/FrmReserList.Designer.cs | 361 ++++------- .../ClientModule/FrmReserList.cs | 85 ++- .../FrmReserManagement.Designer.cs | 296 ++++----- .../ClientModule/FrmReserManagement.cs | 35 +- .../FrmRoomManagement.Designer.cs | 55 +- .../ClientModule/FrmRoomManagement.cs | 22 +- .../FrmRoomStateManagement.Designer.cs | 169 +++-- .../ClientModule/FrmRoomStateManagement.cs | 37 +- .../ClientModule/FrmRoomStateManagement.resx | 54 +- .../ClientModule/FrmSellThing.Designer.cs | 16 +- .../ClientModule/FrmSellThing.cs | 69 +- .../EOM.TSHotelManagement.FormUI.csproj | 7 +- 51 files changed, 2498 insertions(+), 2162 deletions(-) create mode 100644 EOM.TSHotelManagement.Common/UIMessageConstant.cs delete mode 100644 EOM.TSHotelManagement.FormUI/ClientCustomControls/ucNavBar.Designer.cs delete mode 100644 EOM.TSHotelManagement.FormUI/ClientCustomControls/ucNavBar.cs create mode 100644 EOM.TSHotelManagement.FormUI/ClientCustomControls/ucWindowHeader.Designer.cs create mode 100644 EOM.TSHotelManagement.FormUI/ClientCustomControls/ucWindowHeader.cs create mode 100644 EOM.TSHotelManagement.FormUI/ClientCustomControls/ucWindowHeader.resx create mode 100644 EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.Designer.cs create mode 100644 EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.cs create mode 100644 EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.resx create mode 100644 EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.Designer.cs create mode 100644 EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.cs create mode 100644 EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.resx rename EOM.TSHotelManagement.FormUI/ClientModule/{FrmSelectCustoInfo.Designer.cs => FrmCustomerInfo.Designer.cs} (99%) rename EOM.TSHotelManagement.FormUI/ClientModule/{FrmSelectCustoInfo.cs => FrmCustomerInfo.cs} (98%) rename EOM.TSHotelManagement.FormUI/ClientModule/{FrmSelectCustoInfo.resx => FrmCustomerInfo.resx} (100%) create mode 100644 EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.Designer.cs create mode 100644 EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.cs rename EOM.TSHotelManagement.FormUI/{ClientCustomControls/ucNavBar.resx => ClientModule/FrmPersonnelInfo.resx} (99%) diff --git a/EOM.TSHotelManagement.Common/BackendApi/ApiConstants.cs b/EOM.TSHotelManagement.Common/BackendApi/ApiConstants.cs index ac3a2ab..e467d1d 100644 --- a/EOM.TSHotelManagement.Common/BackendApi/ApiConstants.cs +++ b/EOM.TSHotelManagement.Common/BackendApi/ApiConstants.cs @@ -11,6 +11,7 @@ public const string Base_SelectCustoTypeAllCanUse = "Base/SelectCustoTypeAllCanUse"; public const string Base_SelectPassPortTypeAllCanUse = "Base/SelectPassPortTypeAllCanUse"; public const string Base_SelectRoomStateAll = "Base/SelectRoomStateAll"; + public const string Base_SelectReserTypeAll = "Base/SelectReserTypeAll"; // Employee URLs public const string Employee_SelectEmployeeInfoByEmployeeId = "Employee/SelectEmployeeInfoByEmployeeId"; diff --git a/EOM.TSHotelManagement.Common/EOM.TSHotelManagement.Common.csproj b/EOM.TSHotelManagement.Common/EOM.TSHotelManagement.Common.csproj index 640dd30..fc0d7c3 100644 --- a/EOM.TSHotelManagement.Common/EOM.TSHotelManagement.Common.csproj +++ b/EOM.TSHotelManagement.Common/EOM.TSHotelManagement.Common.csproj @@ -13,9 +13,7 @@ - - diff --git a/EOM.TSHotelManagement.Common/Helper/HttpHelper.cs b/EOM.TSHotelManagement.Common/Helper/HttpHelper.cs index 104eb13..64f88b5 100644 --- a/EOM.TSHotelManagement.Common/Helper/HttpHelper.cs +++ b/EOM.TSHotelManagement.Common/Helper/HttpHelper.cs @@ -402,28 +402,6 @@ namespace EOM.TSHotelManagement.Common return REG_URL_ENCODING.Replace(stringToEncode, m => m.Value.ToUpperInvariant()); } - /// - /// Json转数组列表 - /// - /// - /// - /// - public static List? JsonToList(string JsonStr) - { - return JsonConvert.DeserializeObject>(JsonStr); - } - - /// - /// Json转分页列表 - /// - /// - /// - /// - public static T? JsonToPageList(string json) where T : class - { - return JsonConvert.DeserializeObject(json); - } - /// /// Json转实体 /// @@ -434,27 +412,5 @@ namespace EOM.TSHotelManagement.Common { return JsonConvert.DeserializeObject(input); } - - /// - /// 实体转Json - /// - /// - /// - /// - public static string ModelToJson(this T input) - { - try - { - return JsonConvert.SerializeObject(input, new JsonSerializerSettings - { - Converters = { new IgnoreNullValuesConverter(true) }, - Formatting = Formatting.Indented // 如果需要格式化输出 - }); - } - catch (Exception ex) - { - return ex.Message; - } - } } } diff --git a/EOM.TSHotelManagement.Common/UIMessageConstant.cs b/EOM.TSHotelManagement.Common/UIMessageConstant.cs new file mode 100644 index 0000000..203a362 --- /dev/null +++ b/EOM.TSHotelManagement.Common/UIMessageConstant.cs @@ -0,0 +1,26 @@ +using EOM.TSHotelManagement.Common.Util; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace EOM.TSHotelManagement.Common +{ + public class UIMessageConstant + { + public const string Success = "成功"; + public const string Error = "错误"; + public const string Warning = "警告"; + public const string Information = "信息"; + public const string Ok = "确定"; + public const string Chs_Cancel = "取消"; + public const string Chs_Yes = "好的"; + public const string Chs_No = "不了"; + public const string Chs_Wait = "稍后"; + public const string Eng_Cancel = "Cancel"; + public const string Eng_Yes = "Yes"; + public const string Eng_No = "No"; + public const string Eng_Wait = "Wait a minute..."; + } +} diff --git a/EOM.TSHotelManagement.Common/Util/RecordHelper.cs b/EOM.TSHotelManagement.Common/Util/RecordHelper.cs index a20c925..783f5f5 100644 --- a/EOM.TSHotelManagement.Common/Util/RecordHelper.cs +++ b/EOM.TSHotelManagement.Common/Util/RecordHelper.cs @@ -1,5 +1,6 @@ using EOM.TSHotelManagement.Common.Contract; using EOM.TSHotelManagement.Common.Core; +using jvncorelib.EntityLib; namespace EOM.TSHotelManagement.Common { @@ -27,7 +28,7 @@ namespace EOM.TSHotelManagement.Common DataInsUsr = LoginInfo.WorkerNo, DataInsDate = Convert.ToDateTime(DateTime.Now) }; - HttpHelper.Request(api, HttpHelper.ModelToJson(logDetail)); + HttpHelper.Request(api, logDetail.ModelToJson()); } } diff --git a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucNavBar.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucNavBar.Designer.cs deleted file mode 100644 index e6eee04..0000000 --- a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucNavBar.Designer.cs +++ /dev/null @@ -1,47 +0,0 @@ -namespace EOM.TSHotelManagement.FormUI.AppUserControls -{ - partial class ucNavBar - { - /// - /// 必需的设计器变量。 - /// - private System.ComponentModel.IContainer components = null; - - /// - /// 清理所有正在使用的资源。 - /// - /// 如果应释放托管资源,为 true;否则为 false。 - protected override void Dispose(bool disposing) - { - if (disposing && (components != null)) - { - components.Dispose(); - } - base.Dispose(disposing); - } - - #region 组件设计器生成的代码 - - /// - /// 设计器支持所需的方法 - 不要修改 - /// 使用代码编辑器修改此方法的内容。 - /// - private void InitializeComponent() - { - SuspendLayout(); - // - // ucNavBar - // - AutoScaleDimensions = new System.Drawing.SizeF(7F, 17F); - AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - BackColor = System.Drawing.Color.Transparent; - BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; - Margin = new System.Windows.Forms.Padding(4); - Name = "ucNavBar"; - Size = new System.Drawing.Size(153, 113); - ResumeLayout(false); - } - - #endregion - } -} diff --git a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucNavBar.cs b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucNavBar.cs deleted file mode 100644 index ca8cc1d..0000000 --- a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucNavBar.cs +++ /dev/null @@ -1,33 +0,0 @@ -/* - * MIT License - *Copyright (c) 2021 易开元(EOM) - - *Permission is hereby granted, free of charge, to any person obtaining a copy - *of this software and associated documentation files (the "Software"), to deal - *in the Software without restriction, including without limitation the rights - *to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - *copies of the Software, and to permit persons to whom the Software is - *furnished to do so, subject to the following conditions: - - *The above copyright notice and this permission notice shall be included in all - *copies or substantial portions of the Software. - - *THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - *IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - *FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - *AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - *LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - *OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - *SOFTWARE. - * - */ -namespace EOM.TSHotelManagement.FormUI.AppUserControls -{ - public partial class ucNavBar : UserControl - { - public ucNavBar() - { - InitializeComponent(); - } - } -} diff --git a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.cs b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.cs index 6a36dc1..28e7625 100644 --- a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.cs +++ b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.cs @@ -1,8 +1,9 @@ using EOM.TSHotelManagement.Common; using EOM.TSHotelManagement.Common.Contract; +using EOM.TSHotelManagement.Common.Util; using EOM.TSHotelManagement.FormUI.Properties; using EOM.TSHotelManagement.Shared; -using Sunny.UI; +using jvncorelib.EntityLib; using System.ComponentModel; using System.Drawing.Drawing2D; using System.Runtime.InteropServices; @@ -12,10 +13,12 @@ namespace EOM.TSHotelManagement.FormUI public partial class ucRoom : UserControl { private LoadingProgress _loadingProgress; - public ucRoom() + private FrmRoomManager _fromRoomManagement; + public ucRoom(FrmRoomManager frmRoomManagement) { InitializeComponent(); _loadingProgress = new LoadingProgress(); + _fromRoomManagement = frmRoomManagement; } @@ -219,7 +222,7 @@ namespace EOM.TSHotelManagement.FormUI var roomText = btnRoom.Text?.Split("\n\n"); if (roomText == null || roomText.Length < 2) { - UIMessageBox.Show("房间信息不完整!", "来自小T提示", UIStyle.Red); + AntdUI.Modal.open(_fromRoomManagement, UIMessageConstant.Error, "房间信息不完整!"); return; } getParam = new Dictionary @@ -231,7 +234,7 @@ namespace EOM.TSHotelManagement.FormUI if (response.Code != BusinessStatusCode.Success) { - UIMessageBox.Show($"{ApiConstants.Room_SelectRoomByRoomNo}+接口服务异常!", "来自小T提示", UIStyle.Red); + AntdUI.Modal.open(_fromRoomManagement, UIMessageConstant.Error, $"{ApiConstants.Room_SelectRoomByRoomNo}+接口服务异常!"); return; } r = response.Data; @@ -284,7 +287,7 @@ namespace EOM.TSHotelManagement.FormUI rm_RoomType = romRoomInfo.RoomName; rm_RoomMoney = Convert.ToDecimal(romRoomInfo.RoomRent).ToString(); rm_RoomStateId = (int)Common.Core.RoomState.Reserved; - UIMessageBox.ShowInfo("欢迎入住,请先注册客户信息!"); + AntdUI.Modal.open(_fromRoomManagement, UIMessageConstant.Error, "欢迎入住,请先注册客户信息!"); FrmReserList frm = new FrmReserList(); frm.ShowDialog(); return; @@ -301,7 +304,8 @@ namespace EOM.TSHotelManagement.FormUI } else { - UIMessageBox.Show("房间信息不完整!", "来自小T提示", UIStyle.Red); + AntdUI.Modal.open(_fromRoomManagement, UIMessageConstant.Error, "房间信息不完整!"); + return; } } @@ -321,8 +325,12 @@ namespace EOM.TSHotelManagement.FormUI { if (romCustoInfo != null && romRoomInfo != null) { - bool tf = UIMessageBox.Show("确定要进行转房吗?", "来自小T的提醒", UIStyle.Orange, UIMessageBoxButtons.OKCancel); - if (tf) + var dr = AntdUI.Modal.open(new AntdUI.Modal.Config(_fromRoomManagement, UIMessageConstant.Information, "确定要进行转房吗?", AntdUI.TType.Info) + { + CancelText = LocalizationHelper.GetLocalizedString("No", "不了"), + OkText = LocalizationHelper.GetLocalizedString("Yes", "是的") + }); + if (dr == DialogResult.OK) { RoomNo = romRoomInfo.RoomNumber; CustoNo = romCustoInfo.CustomerNumber; @@ -333,14 +341,15 @@ namespace EOM.TSHotelManagement.FormUI } else { - UIMessageBox.Show("房间信息不完整!", "来自小T提示", UIStyle.Red); + AntdUI.Modal.open(_fromRoomManagement, UIMessageConstant.Error, "房间信息不完整!"); + return; } } private void tsmiSelectUserInfo_Click(object sender, EventArgs e) { rm_CustoNo = romCustoInfo.CustomerNumber; - FrmSelectCustoInfo frm = new FrmSelectCustoInfo(); + FrmCustomerInfo frm = new FrmCustomerInfo(); frm.ShowDialog(); } @@ -348,8 +357,12 @@ namespace EOM.TSHotelManagement.FormUI { if (r.RoomStateId == (int)Common.Core.RoomState.Reserved) { - bool tf = UIMessageBox.Show("当前房间已被预约,确认更改状态后将会删除原本预约状态及信息,你确定吗?", "来自小T的提醒", UIStyle.Red, UIMessageBoxButtons.OKCancel); - if (tf) + var dr = AntdUI.Modal.open(new AntdUI.Modal.Config(_fromRoomManagement, UIMessageConstant.Information, "当前房间已被预约,确认更改状态后将会删除原本预约状态及信息,你确定吗?", AntdUI.TType.Info) + { + CancelText = LocalizationHelper.GetLocalizedString(UIMessageConstant.Eng_No, UIMessageConstant.Chs_No), + OkText = LocalizationHelper.GetLocalizedString(UIMessageConstant.Eng_Yes, UIMessageConstant.Chs_Yes) + }); + if (dr == DialogResult.OK) { getParam = new Dictionary() { @@ -359,7 +372,7 @@ namespace EOM.TSHotelManagement.FormUI var reserResponse = HttpHelper.JsonToModel>(result.message); if (reserResponse.Code != BusinessStatusCode.Success) { - UIMessageBox.Show($"{ApiConstants.Reser_SelectReserInfoByRoomNo}+接口服务异常!", "来自小T提示", UIStyle.Red); + AntdUI.Modal.open(_fromRoomManagement, UIMessageConstant.Error, $"{ApiConstants.Reser_SelectReserInfoByRoomNo}+接口服务异常!"); return; } else @@ -368,11 +381,11 @@ namespace EOM.TSHotelManagement.FormUI { ReservationId = reserResponse.Data!.ReservationId }; - result = HttpHelper.Request(ApiConstants.Reser_DeleteReserInfo, HttpHelper.ModelToJson(reser)); + result = HttpHelper.Request(ApiConstants.Reser_DeleteReserInfo, reser.ModelToJson()); var reserResult = HttpHelper.JsonToModel(result.message); if (reserResult.Code != BusinessStatusCode.Success) { - UIMessageBox.Show($"{ApiConstants.Reser_DeleteReserInfo}+接口服务异常!", "来自小T提示", UIStyle.Red); + AntdUI.Modal.open(_fromRoomManagement, UIMessageConstant.Error, $"{ApiConstants.Reser_DeleteReserInfo}+接口服务异常!"); return; } } @@ -387,7 +400,7 @@ namespace EOM.TSHotelManagement.FormUI } else { - UIMessageBox.Show("房间信息不完整!", "来自小T提示", UIStyle.Red); + AntdUI.Modal.open(_fromRoomManagement, UIMessageConstant.Error, "房间信息不完整!"); } } } diff --git a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoomType.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoomType.Designer.cs index a7679ab..d92e2a8 100644 --- a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoomType.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoomType.Designer.cs @@ -28,33 +28,30 @@ /// private void InitializeComponent() { - btnRoomType = new Sunny.UI.UIButton(); + btnRoomType = new AntdUI.Button(); SuspendLayout(); // // btnRoomType // - btnRoomType.Cursor = System.Windows.Forms.Cursors.Hand; - btnRoomType.Font = new System.Drawing.Font("微软雅黑", 12F); - btnRoomType.Location = new System.Drawing.Point(0, 2); - btnRoomType.Margin = new System.Windows.Forms.Padding(4); - btnRoomType.MinimumSize = new System.Drawing.Size(1, 1); + btnRoomType.Font = new Font("Noto Sans SC", 10.5F, FontStyle.Regular, GraphicsUnit.Point, 0); + btnRoomType.Location = new Point(6, 3); btnRoomType.Name = "btnRoomType"; - btnRoomType.Size = new System.Drawing.Size(107, 33); - btnRoomType.TabIndex = 1; - btnRoomType.TipsFont = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, 134); + btnRoomType.Size = new Size(107, 34); + btnRoomType.TabIndex = 0; + btnRoomType.Type = AntdUI.TTypeMini.Info; // // ucRoomType // - AutoScaleDimensions = new System.Drawing.SizeF(7F, 17F); - AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + AutoScaleDimensions = new SizeF(7F, 17F); + AutoScaleMode = AutoScaleMode.Font; Controls.Add(btnRoomType); Name = "ucRoomType"; - Size = new System.Drawing.Size(107, 37); + Size = new Size(107, 37); ResumeLayout(false); } #endregion - public Sunny.UI.UIButton btnRoomType; + public AntdUI.Button btnRoomType; } } diff --git a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoomType.resx b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoomType.resx index af32865..8b2ff64 100644 --- a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoomType.resx +++ b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoomType.resx @@ -1,7 +1,7 @@  + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO + vQAADr0BR/uQrQAAArxJREFUWEe9l02IjWEUx2eHzSQkX8m3TJKPktVk5WulJCzUlKhRI5NBjc0UGwss + KGnIShOlsVJsJinNhijZKJPERpnkY6N+R+d2njvnnnmf+7533Pzqbs7/nPOc933e5znndnTMEKBTRFYA + W0VkW9TbjoisEpETIvIA+CYB4DfwDLgC7IjxM0afDrgVFywDGAH2xHyVAWbFhYEJ4K6I9IjIzvQDDgAX + gHvApxBzNeYuBVgIPHZJ3gN90a8IYD7QD7x28Y80Z/QtBFgDjNcfQWQImBf9qgBcc0W8iHohwJgLOhX1 + VrEPt1oB+rRu8UNRnyl6XKNtGvZBpcXvRL0IvQuAy8BD4EjUWwK4b4t/BdZHvQhgdypa74eoVwZYC/yx + Ai5FPUc7Czhvi+ttti7qOdq2BcBzK+Bm1P4LwBcroD9qOfT1A2eBvVErQ99W/Y2JyIK0icDR6FyE2/fE + UPTJAXSlIKBbDdudYVcMaEZ9eRGJWo5w3DfWrl6XZ38MaIZLNBG1HKGAJcmYDMdjQA4ROejibkc9Ryhg + Ts2o3c4MgzEgh7ZZl+hY1HMAAxbzsW7US8SM4w3eTdDm4groinoObc0WM+KNh1OyKvMdsMwt/jbqzQA+ + W9xA3Sgii1wBpUcq7ONYsgOrGz0bAc65uMYTB4ya8AvY0iAWoF+++f+0QfRJ9PFog9NGZ+tP7xsishmY + tKRT+5MB2AcM25R8WuOjj8dmyfT03VGvYYmS09Qe/SM2xKa8w1FvIJ0IoyfqraKXm1v8qYjMjj7T8EXY + uN0ZfcoQkbnapl2eV8Di6JclFPEO6K0yWtuM0Ae8cfGjwIboWwpwJrVql0ynZh3VT9p1nP6Y9Jr9g/Od + 1O8q5m0JYCVwQ6clX0gzgB/A9bKT0RLAUr1I/Kv1AN+Bl8BF7bAxvq1oF7OCNtmtuDz6VOUv6bTRJ8p4 + DGcAAAAASUVORK5CYII= + + + \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLogin.cs b/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLogin.cs index 3836e03..5882a18 100644 --- a/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLogin.cs +++ b/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLogin.cs @@ -128,7 +128,7 @@ namespace EOM.TSHotelManagement.FormUI { var worker = new ReadEmployeeInputDto() { EmployeeId = txtAccount.Text.Trim(), EmailAddress = txtAccount.Text.Trim(), Password = txtWorkerPwd.Text.Trim() }; - result = HttpHelper.Request(ApiConstants.Employee_SelectEmployeeInfoByEmployeeIdAndEmployeePwd, HttpHelper.ModelToJson(worker)); + result = HttpHelper.Request(ApiConstants.Employee_SelectEmployeeInfoByEmployeeIdAndEmployeePwd, worker.ModelToJson()); var response = HttpHelper.JsonToModel>(result.message); diff --git a/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.cs b/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.cs index 707a46d..bfa5daa 100644 --- a/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.cs +++ b/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.cs @@ -27,9 +27,11 @@ using EOM.TSHotelManagement.Common; using EOM.TSHotelManagement.Common.Contract; using EOM.TSHotelManagement.Common.Util; using EOM.TSHotelManagement.FormUI.Properties; +using EOM.TSHotelManagement.Shared; using jvncorelib.CodeLib; -using Sunny.UI; +using jvncorelib.EntityLib; using System.Diagnostics; +using System.Windows.Forms; namespace EOM.TSHotelManagement.FormUI { @@ -356,7 +358,7 @@ namespace EOM.TSHotelManagement.FormUI if (response.Code != BusinessStatusCode.Success) { - UIMessageTip.ShowError($"打卡接口:{ApiConstants.EmployeeCheck_SelectToDayCheckInfoByWorkerNo}异常:{response.Message}"); + AntdUI.Modal.open(this, UIMessageConstant.Error, $"打卡接口:{ApiConstants.EmployeeCheck_SelectToDayCheckInfoByWorkerNo}异常:{response.Message}"); return; } @@ -373,8 +375,12 @@ namespace EOM.TSHotelManagement.FormUI if (!shouldHaveChecked) { - bool dr = UIMessageBox.Show($"你的{shiftName}还未打卡哦,请先打卡吧!", "打卡提醒", UIStyle.Blue, UIMessageBoxButtons.OK); - if (dr == true) + var dr = AntdUI.Modal.open(new AntdUI.Modal.Config(this, UIMessageConstant.Information, $"你的{shiftName}还未打卡哦,请先打卡吧!", AntdUI.TType.Info) + { + CancelText = LocalizationHelper.GetLocalizedString(UIMessageConstant.Eng_Wait, UIMessageConstant.Chs_Wait), + OkText = LocalizationHelper.GetLocalizedString(UIMessageConstant.Eng_Yes, UIMessageConstant.Chs_Yes) + }); + if (dr == DialogResult.OK) { CreateEmployeeCheckInputDto workerCheck = new() { @@ -392,7 +398,7 @@ namespace EOM.TSHotelManagement.FormUI var checkResult = HttpHelper.JsonToModel(result.message); if (checkResult.Code != BusinessStatusCode.Success) { - UIMessageTip.ShowError($"打卡接口{ApiConstants.EmployeeCheck_AddCheckInfo}异常:{checkResult.Message}"); + AntdUI.Modal.open(this, UIMessageConstant.Error, $"打卡接口{ApiConstants.EmployeeCheck_AddCheckInfo}异常:{checkResult.Message}"); return; } @@ -400,11 +406,11 @@ namespace EOM.TSHotelManagement.FormUI response = HttpHelper.JsonToModel>(result.message); if (response.Code != BusinessStatusCode.Success) { - UIMessageTip.ShowError($"打卡天数接口{ApiConstants.EmployeeCheck_SelectWorkerCheckDaySumByEmployeeId}异常:{response.Message}"); + AntdUI.Modal.open(this, UIMessageConstant.Error, $"打卡天数接口{ApiConstants.EmployeeCheck_SelectWorkerCheckDaySumByEmployeeId}异常:{response.Message}"); return; } - UIMessageBox.Show($"{shiftName}打卡成功!你已共打卡" + lblCheckDay.Text + "天", "打卡提醒", UIStyle.Green, UIMessageBoxButtons.OK); + AntdUI.Modal.open(this, UIMessageConstant.Success, $"{shiftName}打卡成功!你已共打卡" + lblCheckDay.Text + "天"); linkLabel1.Text = $"{shiftName}已打卡"; linkLabel1.ForeColor = Color.Green; linkLabel1.LinkColor = Color.Green; diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAbout.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAbout.Designer.cs index 2cfdc1d..e48e409 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAbout.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAbout.Designer.cs @@ -29,7 +29,6 @@ private void InitializeComponent() { System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmAbout)); - btnClose = new AntdUI.Button(); picLogo = new PictureBox(); lblSoftName = new Label(); lblServerVersion = new AntdUI.Label(); @@ -40,21 +39,10 @@ lblNotice = new AntdUI.Label(); lblFrameworkVersion = new AntdUI.Label(); lblFrameworkVersionDescription = new AntdUI.Label(); + whAboutHeader = new ucWindowHeader(); ((System.ComponentModel.ISupportInitialize)picLogo).BeginInit(); SuspendLayout(); // - // btnClose - // - btnClose.BackColor = Color.Transparent; - btnClose.BackgroundImage = Properties.Resources.close; - btnClose.Font = new Font("Microsoft YaHei UI", 9F); - btnClose.Ghost = true; - btnClose.Location = new Point(348, 3); - btnClose.Name = "btnClose"; - btnClose.Size = new Size(41, 38); - btnClose.TabIndex = 42; - btnClose.Click += btnClose_Click; - // // picLogo // picLogo.BackColor = Color.Transparent; @@ -165,12 +153,20 @@ lblFrameworkVersionDescription.Text = ""; lblFrameworkVersionDescription.TextAlign = ContentAlignment.MiddleRight; // + // whAboutHeader + // + whAboutHeader.Location = new Point(1, -1); + whAboutHeader.Name = "whAboutHeader"; + whAboutHeader.Size = new Size(391, 35); + whAboutHeader.TabIndex = 53; + // // FrmAbout // AutoScaleDimensions = new SizeF(7F, 17F); AutoScaleMode = AutoScaleMode.Font; BackColor = Color.FromArgb(235, 243, 255); ClientSize = new Size(390, 476); + Controls.Add(whAboutHeader); Controls.Add(lblFrameworkVersion); Controls.Add(lblFrameworkVersionDescription); Controls.Add(lblNotice); @@ -181,7 +177,6 @@ Controls.Add(lblClientVersionDescriotion); Controls.Add(lblSoftName); Controls.Add(picLogo); - Controls.Add(btnClose); FormBorderStyle = FormBorderStyle.FixedSingle; Icon = (Icon)resources.GetObject("$this.Icon"); Margin = new Padding(2); @@ -196,8 +191,6 @@ } #endregion - - private AntdUI.Button btnClose; private PictureBox picLogo; private Label lblSoftName; private AntdUI.Label lblServerVersion; @@ -208,5 +201,6 @@ private AntdUI.Label lblNotice; private AntdUI.Label lblFrameworkVersion; private AntdUI.Label lblFrameworkVersionDescription; + private ucWindowHeader whAboutHeader; } } \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAbout.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAbout.cs index 80062be..b84b793 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAbout.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAbout.cs @@ -29,9 +29,12 @@ namespace EOM.TSHotelManagement.FormUI { public partial class FrmAbout : Window { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmAbout)); public FrmAbout() { InitializeComponent(); + + whAboutHeader = new ucWindowHeader("关于", string.Empty, (Image)resources.GetObject("FrmAbout.Icon")!); } #region 记录鼠标和窗体坐标的方法 diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.Designer.cs new file mode 100644 index 0000000..3fd014b --- /dev/null +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.Designer.cs @@ -0,0 +1,146 @@ +namespace EOM.TSHotelManagement.FormUI +{ + partial class FrmAccountSecurity + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmAccountSecurity)); + avatar3 = new AntdUI.Avatar(); + txtOldPassword = new AntdUI.Input(); + lblEmployeeId = new AntdUI.Label(); + avatar2 = new AntdUI.Avatar(); + avatar1 = new AntdUI.Avatar(); + btnUpdatePassword = new AntdUI.Button(); + txtNewPassword = new AntdUI.Input(); + SuspendLayout(); + // + // avatar3 + // + avatar3.Image = (Image)resources.GetObject("avatar3.Image"); + avatar3.ImageFit = AntdUI.TFit.None; + avatar3.Location = new Point(260, 156); + avatar3.Name = "avatar3"; + avatar3.Size = new Size(45, 43); + avatar3.TabIndex = 54; + avatar3.Text = "a"; + // + // txtOldPassword + // + txtOldPassword.BackColor = Color.White; + txtOldPassword.Font = new Font("Microsoft YaHei UI", 14F); + txtOldPassword.Location = new Point(303, 153); + txtOldPassword.Name = "txtOldPassword"; + txtOldPassword.PasswordChar = '*'; + txtOldPassword.PasswordCopy = true; + txtOldPassword.PlaceholderColorExtend = ""; + txtOldPassword.PlaceholderText = ""; + txtOldPassword.Size = new Size(238, 52); + txtOldPassword.TabIndex = 53; + // + // lblEmployeeId + // + lblEmployeeId.Location = new Point(303, 83); + lblEmployeeId.Name = "lblEmployeeId"; + lblEmployeeId.Size = new Size(238, 43); + lblEmployeeId.TabIndex = 52; + lblEmployeeId.Text = ""; + lblEmployeeId.TextAlign = ContentAlignment.MiddleCenter; + // + // avatar2 + // + avatar2.Image = (Image)resources.GetObject("avatar2.Image"); + avatar2.ImageFit = AntdUI.TFit.None; + avatar2.Location = new Point(260, 236); + avatar2.Name = "avatar2"; + avatar2.Size = new Size(45, 43); + avatar2.TabIndex = 51; + avatar2.Text = "a"; + // + // avatar1 + // + avatar1.Image = (Image)resources.GetObject("avatar1.Image"); + avatar1.ImageFit = AntdUI.TFit.None; + avatar1.Location = new Point(260, 83); + avatar1.Name = "avatar1"; + avatar1.Size = new Size(45, 43); + avatar1.TabIndex = 50; + avatar1.Text = "a"; + // + // btnUpdatePassword + // + btnUpdatePassword.Font = new Font("Microsoft YaHei UI", 12F); + btnUpdatePassword.Location = new Point(313, 310); + btnUpdatePassword.Name = "btnUpdatePassword"; + btnUpdatePassword.Size = new Size(191, 57); + btnUpdatePassword.TabIndex = 49; + btnUpdatePassword.Text = "修改密码"; + btnUpdatePassword.Type = AntdUI.TTypeMini.Primary; + btnUpdatePassword.Click += btnUpdatePassword_Click; + // + // txtNewPassword + // + txtNewPassword.BackColor = Color.White; + txtNewPassword.Font = new Font("Microsoft YaHei UI", 14F); + txtNewPassword.Location = new Point(303, 232); + txtNewPassword.Name = "txtNewPassword"; + txtNewPassword.PasswordChar = '*'; + txtNewPassword.PasswordCopy = true; + txtNewPassword.PlaceholderColorExtend = ""; + txtNewPassword.PlaceholderText = ""; + txtNewPassword.Size = new Size(238, 52); + txtNewPassword.TabIndex = 48; + // + // FrmAccountSecurity + // + AutoScaleDimensions = new SizeF(7F, 17F); + AutoScaleMode = AutoScaleMode.Font; + BackColor = Color.FromArgb(235, 243, 255); + ClientSize = new Size(800, 450); + Controls.Add(avatar3); + Controls.Add(txtOldPassword); + Controls.Add(lblEmployeeId); + Controls.Add(avatar2); + Controls.Add(avatar1); + Controls.Add(btnUpdatePassword); + Controls.Add(txtNewPassword); + Name = "FrmAccountSecurity"; + Text = "FrmAccountSecurity"; + Load += FrmAccountSecurity_Load; + ResumeLayout(false); + } + + #endregion + + private AntdUI.Avatar avatar3; + private AntdUI.Input txtOldPassword; + private AntdUI.Label lblEmployeeId; + private AntdUI.Avatar avatar2; + private AntdUI.Avatar avatar1; + private AntdUI.Button btnUpdatePassword; + private AntdUI.Input txtNewPassword; + } +} \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.cs new file mode 100644 index 0000000..7e99d73 --- /dev/null +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.cs @@ -0,0 +1,59 @@ +using AntdUI; +using EOM.TSHotelManagement.Common; +using EOM.TSHotelManagement.Common.Contract; +using EOM.TSHotelManagement.Common.Util; +using jvncorelib.EntityLib; +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace EOM.TSHotelManagement.FormUI +{ + public partial class FrmAccountSecurity : Window + { + public FrmAccountSecurity() + { + InitializeComponent(); + } + + private void FrmAccountSecurity_Load(object sender, EventArgs e) + { + lblEmployeeId.Text = LoginInfo.WorkerNo; + txtOldPassword.PlaceholderText = LocalizationHelper.GetLocalizedString("Please input old password", "请输入旧密码"); + txtNewPassword.PlaceholderText = LocalizationHelper.GetLocalizedString("Please input new password", "请输入新密码"); + } + + private void btnUpdatePassword_Click(object sender, EventArgs e) + { + if (string.IsNullOrEmpty(txtOldPassword.Text) || string.IsNullOrEmpty(txtNewPassword.Text)) + { + AntdUI.Modal.open(this, LocalizationHelper.GetLocalizedString("System prompt", "系统提示"), LocalizationHelper.GetLocalizedString("Please input new password or old password", "请输入旧密码或新密码"), TType.Error); + return; + } + + var employee = new UpdateEmployeeInputDto + { + EmployeeId = LoginInfo.WorkerNo, + OldPassword = txtOldPassword.Text.Trim(), + Password = txtNewPassword.Text.Trim(), + DataChgDate = DateTime.Now, + DataChgUsr = LoginInfo.WorkerNo + }; + var request = HttpHelper.Request(ApiConstants.Employee_UpdateEmployeeAccountPassword, employee.ModelToJson()); + var response = HttpHelper.JsonToModel(request.message); + if (response.Code != BusinessStatusCode.Success) + { + AntdUI.Modal.open(this, LocalizationHelper.GetLocalizedString("System prompt", "系统提示"), LocalizationHelper.GetLocalizedString($"{ApiConstants.Employee_UpdateEmployeeAccountPassword}+Interface service exception, please submit an issue or try updating the version!", $"{ApiConstants.Employee_UpdateEmployeeAccountPassword}+接口服务异常,请提交Issue或尝试更新版本!")); + return; + } + AntdUI.Modal.open(this, LocalizationHelper.GetLocalizedString("System prompt", "系统提示"), LocalizationHelper.GetLocalizedString("Update password success", "更新密码成功"), TType.Success); + return; + } + } +} diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.resx new file mode 100644 index 0000000..08486f8 --- /dev/null +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.resx @@ -0,0 +1,157 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAATBJREFUWEfl + l8ENgzAMRVkAxAgdpaMwRFP12E0YpaNwzBitHIXWNSY/wUGo6pN8QHYcYyc2NM0v0t/8qbv6exDnx9b5 + ob/4s7SrDm3cOv/onH+uyEQ2cl0V6C2VDTWZKDNyvQlKL9+EsjCnPGZliOX4ZKJmSb7Snng7GYTUb0Kk + fpR6CdmwTA1SXwx3KHUa4YawUkl9MeFQFaaUlSx7zSol6Z/hZ0bqitkSQGnZkvxnALzPswDoMNJzjswH + NwROknUlY8fji2tLelaAQVNL9KtZvYEw5BRV5wRvuVn1KoT7PzwA1T80MAL9QwMj0D80MAL9QwMj0D80 + MAL9QwMj0D80MAL98y9f1cAIDkC04uTQKGTRijXf0mgvSc6ZmIV9x7E2BzjvP53lR4ZNEj80h/ICfjHx + PxFMstQAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAATBJREFUWEfl + l8ENgzAMRVkAxAgdpaMwRFP12E0YpaNwzBitHIXWNSY/wUGo6pN8QHYcYyc2NM0v0t/8qbv6exDnx9b5 + ob/4s7SrDm3cOv/onH+uyEQ2cl0V6C2VDTWZKDNyvQlKL9+EsjCnPGZliOX4ZKJmSb7Snng7GYTUb0Kk + fpR6CdmwTA1SXwx3KHUa4YawUkl9MeFQFaaUlSx7zSol6Z/hZ0bqitkSQGnZkvxnALzPswDoMNJzjswH + NwROknUlY8fji2tLelaAQVNL9KtZvYEw5BRV5wRvuVn1KoT7PzwA1T80MAL9QwMj0D80MAL9QwMj0D80 + MAL9QwMj0D80MAL98y9f1cAIDkC04uTQKGTRijXf0mgvSc6ZmIV9x7E2BzjvP53lR4ZNEj80h/ICfjHx + PxFMstQAAAAASUVORK5CYII= + + + + + iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAg1JREFUWEe1 + VrtKA0EUTZmkERStxEfhT1iIra3+QFo7s4pEURL9AUEQQfDR2wkWVkkhCDZ2WlikESbZoAmILyKM3GVn + c/eYye7sbA6cIpuZ+753biZjgeyamMFvQwUpzDuikiuKas4R0medfucdcT5UgzzFPaU61ukc3rUGeCxH + S43W0nG7tnLWeVg4fHue23fraAjKSAyufGSzIY5uv8X9i5TIvZtPObHdbKuzqUQiuyEWlcDpsvuESpFX + j79ycrf5paJA91GmEXhYSTgq7MeTu59eKoqiijJjgypaCdq5/mihokGcP3i1r4WsIwqm3iuuXr4HUUic + BuprJQQVRJGnwcaAoO9NI0AdERjgiALKjgXeAeQRKhnEUAqSTkdehMunnX9KBpEVoUS5RvDmvCPkVNnt + xo0C957qCGUagadhtuJG1kJoBth6r8C7gYwgD1ExGcY9JyaufoRXC/AYEcdKDTm+1Qh9U0zlHeDwC7KG + ivqwm18XF3jfCjH3AKT9XqAJvdp+KpRjOkODps+W5DGxEXwGmAgLVjYwGs9FAnc+04r22zfYkozmQUi5 + xXvuRzEwItabwAePdynpHPcB8qJTwb03DbsOvCYi6yiN0CMgFfoo8A0oVr4MECuyfObb5h7B06B1jluJ + /9mCF6O2DoI8pZh/BT7YtDNBRUB7wBLKQa18NUbTzr+Cko/f/wBMTh9auuIjhwAAAABJRU5ErkJggg== + + + \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.Designer.cs new file mode 100644 index 0000000..10536a1 --- /dev/null +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.Designer.cs @@ -0,0 +1,85 @@ +namespace EOM.TSHotelManagement.FormUI +{ + partial class FrmAvator + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + label4 = new AntdUI.Label(); + picWorkerPic = new PictureBox(); + openPic = new OpenFileDialog(); + ((System.ComponentModel.ISupportInitialize)picWorkerPic).BeginInit(); + SuspendLayout(); + // + // label4 + // + label4.Location = new Point(293, 347); + label4.Name = "label4"; + label4.Size = new Size(215, 23); + label4.TabIndex = 3; + label4.Text = "Tips:头像大小不能超过1MB"; + label4.TextAlign = ContentAlignment.MiddleCenter; + // + // picWorkerPic + // + picWorkerPic.BackgroundImage = Properties.Resources.账号; + picWorkerPic.BackgroundImageLayout = ImageLayout.Stretch; + picWorkerPic.Location = new Point(293, 81); + picWorkerPic.Name = "picWorkerPic"; + picWorkerPic.Size = new Size(215, 246); + picWorkerPic.SizeMode = PictureBoxSizeMode.StretchImage; + picWorkerPic.TabIndex = 2; + picWorkerPic.TabStop = false; + picWorkerPic.Click += picWorkerPic_Click; + // + // openPic + // + openPic.FileName = "openFileDialog1"; + openPic.Filter = "PNG文件|*.png|JPG文件|*.jpg|位图文件|*.bmp"; + openPic.FileOk += openPic_FileOk; + // + // FrmAvator + // + AutoScaleDimensions = new SizeF(7F, 17F); + AutoScaleMode = AutoScaleMode.Font; + BackColor = Color.FromArgb(235, 243, 255); + ClientSize = new Size(800, 450); + Controls.Add(label4); + Controls.Add(picWorkerPic); + Name = "FrmAvator"; + Text = "FrmAvator"; + Load += FrmAvator_Load; + ((System.ComponentModel.ISupportInitialize)picWorkerPic).EndInit(); + ResumeLayout(false); + } + + #endregion + + private AntdUI.Label label4; + private PictureBox picWorkerPic; + private OpenFileDialog openPic; + } +} \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.cs new file mode 100644 index 0000000..27cf5fa --- /dev/null +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.cs @@ -0,0 +1,93 @@ +using AntdUI; +using EOM.TSHotelManagement.Common; +using EOM.TSHotelManagement.Common.Contract; +using jvncorelib.EntityLib; +using Sunny.UI; +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace EOM.TSHotelManagement.FormUI +{ + public partial class FrmAvator : Window + { + public FrmAvator() + { + InitializeComponent(); + } + + private void FrmAvator_Load(object sender, EventArgs e) + { + + } + + + public void PicHandler() + { + Dictionary additionalParams = new Dictionary + { + { nameof(CreateEmployeePhotoInputDto.EmployeeId), LoginInfo.WorkerNo } + }; + + var workerPic = new CreateEmployeePhotoInputDto + { + EmployeeId = LoginInfo.WorkerNo.Trim(), + PhotoUrl = null, + }; + var requestResult = HttpHelper.UploadFile(ApiConstants.EmployeePhoto_InsertWorkerPhoto, openPic.FileName, additionalParams); + var response = HttpHelper.JsonToModel>(requestResult.message); + if (response.Code != BusinessStatusCode.Success) + { + UIMessageBox.ShowError($"{response.Message}:{ApiConstants.EmployeePhoto_InsertWorkerPhoto}+接口服务异常,请提交Issue或尝试更新版本!"); + return; + } + UIMessageTip.ShowOk("头像上传成功!稍等将会加载头像哦.."); + picWorkerPic.Load(response.Data.PhotoPath); + } + + private void picWorkerPic_Click(object sender, EventArgs e) + { + openPic.ShowDialog(); + } + + ResponseMsg result = new ResponseMsg(); + private void openPic_FileOk(object sender, CancelEventArgs e) + { + var dic = new Dictionary + { + { nameof(ReadEmployeePhotoInputDto.EmployeeId) , LoginInfo.WorkerNo } + }; + result = HttpHelper.Request(ApiConstants.EmployeePhoto_EmployeePhoto, dic); + var workerPic = HttpHelper.JsonToModel>(result.message); + if (workerPic.Code != BusinessStatusCode.Success) + { + UIMessageBox.ShowError($"{ApiConstants.EmployeePhoto_EmployeePhoto}+接口服务异常,请提交Issue或尝试更新版本!"); + return; + } + var workerPicData = workerPic.Data; + if (!workerPicData.IsNullOrEmpty() && !string.IsNullOrEmpty(workerPicData.PhotoPath)) + { + result = HttpHelper.Request(ApiConstants.EmployeePhoto_DeleteWorkerPhoto, workerPic.ModelToJson()); + var response = HttpHelper.JsonToModel(result.message); + if (response.Code != BusinessStatusCode.Success) + { + UIMessageBox.ShowError($"{ApiConstants.EmployeePhoto_DeleteWorkerPhoto}+接口服务异常,请提交Issue或尝试更新版本!"); + return; + } + PicHandler(); + } + else + { + PicHandler(); + } + + } + + } +} diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.resx new file mode 100644 index 0000000..7862d4f --- /dev/null +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.resx @@ -0,0 +1,123 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.cs index a9e3b76..706b527 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.cs @@ -70,7 +70,7 @@ namespace EOM.TSHotelManagement.FormUI DataChgUsr = LoginInfo.WorkerNo, DataChgDate = Convert.ToDateTime(DateTime.Now) }; - result = HttpHelper.Request(ApiConstants.Room_TransferRoom, HttpHelper.ModelToJson(transferRoom)); + result = HttpHelper.Request(ApiConstants.Room_TransferRoom, transferRoom.ModelToJson()); var response = HttpHelper.JsonToModel(result.message!); if (response.Code != BusinessStatusCode.Success) { diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckIn.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckIn.cs index e2102fc..8bce80e 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckIn.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckIn.cs @@ -151,7 +151,8 @@ namespace EOM.TSHotelManagement.FormUI // 如果会员等级有变,更新会员等级 if (new_type != 0) { - result = HttpHelper.Request(ApiConstants.Customer_UpdCustomerTypeByCustoNo, HttpHelper.ModelToJson(new UpdateCustomerInputDto { CustomerNumber = txtCustoNo.Text.Trim(), CustomerType = new_type })); + var customer = new UpdateCustomerInputDto { CustomerNumber = txtCustoNo.Text.Trim(), CustomerType = new_type }; + result = HttpHelper.Request(ApiConstants.Customer_UpdCustomerTypeByCustoNo, customer.ModelToJson()); var updateResponse = HttpHelper.JsonToModel(result.message!); if (updateResponse.Code != BusinessStatusCode.Success) { @@ -201,7 +202,7 @@ namespace EOM.TSHotelManagement.FormUI RoomNumber = txtRoomNo.Text, DataChgUsr = LoginInfo.WorkerNo }; - result = HttpHelper.Request(ApiConstants.Room_UpdateRoomInfo, HttpHelper.ModelToJson(r)); + result = HttpHelper.Request(ApiConstants.Room_UpdateRoomInfo, r.ModelToJson()); var response = HttpHelper.JsonToModel(result.message!); if (response.Code != BusinessStatusCode.Success) { diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutForm.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutForm.cs index 919d9eb..da06c5e 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutForm.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutForm.cs @@ -25,6 +25,7 @@ using EOM.TSHotelManagement.Common; using EOM.TSHotelManagement.Common.Contract; using EOM.TSHotelManagement.Shared; +using jvncorelib.EntityLib; using Sunny.UI; namespace EOM.TSHotelManagement.FormUI @@ -266,16 +267,16 @@ namespace EOM.TSHotelManagement.FormUI { if (!string.IsNullOrEmpty(txtReceipts.Text) && Convert.ToDecimal(txtReceipts.Text) > Convert.ToDecimal(lblVIPPrice.Text))//判断实收金额是否为空以及是否小于应收金额 { - result = HttpHelper.Request(ApiConstants.Room_CheckoutRoom, - HttpHelper.ModelToJson(new CheckoutRoomDto - { - RoomNumber = txtRoomNo.Text.Trim(), - CustomerNumber = txtCustomerNumber.Text.Trim(), - DataChgDate = DateTime.Now, - DataChgUsr = LoginInfo.WorkerNo, - ElectricityUsage = w.PowerUsage, - WaterUsage = w.WaterUsage - })); + var model = new CheckoutRoomDto + { + RoomNumber = txtRoomNo.Text.Trim(), + CustomerNumber = txtCustomerNumber.Text.Trim(), + DataChgDate = DateTime.Now, + DataChgUsr = LoginInfo.WorkerNo, + ElectricityUsage = w.PowerUsage, + WaterUsage = w.WaterUsage + }; + result = HttpHelper.Request(ApiConstants.Room_CheckoutRoom, model.ModelToJson()); var response = HttpHelper.JsonToModel(result.message); if (response.Code != BusinessStatusCode.Success) { diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmSelectCustoInfo.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerInfo.Designer.cs similarity index 99% rename from EOM.TSHotelManagement.FormUI/ClientModule/FrmSelectCustoInfo.Designer.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerInfo.Designer.cs index 937040a..8d14dd4 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmSelectCustoInfo.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerInfo.Designer.cs @@ -1,6 +1,6 @@ namespace EOM.TSHotelManagement.FormUI { - partial class FrmSelectCustoInfo + partial class FrmCustomerInfo { /// /// Required designer variable. @@ -28,7 +28,7 @@ /// private void InitializeComponent() { - System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmSelectCustoInfo)); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmCustomerInfo)); this.cbCustoType = new Sunny.UI.UIComboBox(); this.cbPassportType = new Sunny.UI.UIComboBox(); this.cbSex = new Sunny.UI.UIComboBox(); diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmSelectCustoInfo.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerInfo.cs similarity index 98% rename from EOM.TSHotelManagement.FormUI/ClientModule/FrmSelectCustoInfo.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerInfo.cs index 9f7821d..7a17e9b 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmSelectCustoInfo.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerInfo.cs @@ -28,9 +28,9 @@ using Sunny.UI; namespace EOM.TSHotelManagement.FormUI { - public partial class FrmSelectCustoInfo : UIForm + public partial class FrmCustomerInfo : UIForm { - public FrmSelectCustoInfo() + public FrmCustomerInfo() { InitializeComponent(); } diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmSelectCustoInfo.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerInfo.resx similarity index 100% rename from EOM.TSHotelManagement.FormUI/ClientModule/FrmSelectCustoInfo.resx rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerInfo.resx diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerManagement.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerManagement.cs index f74d16f..81a5d2a 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerManagement.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerManagement.cs @@ -24,7 +24,7 @@ using EOM.TSHotelManagement.Common; using EOM.TSHotelManagement.Common.Contract; -using Sunny.UI; +using jvncorelib.EntityLib; using System.Runtime.InteropServices; namespace EOM.TSHotelManagement.FormUI diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmEditInputs.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmEditInputs.Designer.cs index 0c0217c..e401bcd 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmEditInputs.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmEditInputs.Designer.cs @@ -29,368 +29,253 @@ private void InitializeComponent() { System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmEditInputs)); - this.cbCustoType = new Sunny.UI.UIComboBox(); - this.cbPassportType = new Sunny.UI.UIComboBox(); - this.cbSex = new Sunny.UI.UIComboBox(); - this.txtCustoNo = new Sunny.UI.UITextBox(); - this.txtCustoName = new Sunny.UI.UITextBox(); - this.txtCardID = new Sunny.UI.UITextBox(); - this.txtTel = new Sunny.UI.UITextBox(); - this.dtpBirthday = new Sunny.UI.UIDatePicker(); - this.txtCustoAdress = new Sunny.UI.UITextBox(); - this.label10 = new System.Windows.Forms.Label(); - this.label9 = new System.Windows.Forms.Label(); - this.label8 = new System.Windows.Forms.Label(); - this.label7 = new System.Windows.Forms.Label(); - this.label6 = new System.Windows.Forms.Label(); - this.label5 = new System.Windows.Forms.Label(); - this.label4 = new System.Windows.Forms.Label(); - this.label3 = new System.Windows.Forms.Label(); - this.label2 = new System.Windows.Forms.Label(); - this.pnlBtm.SuspendLayout(); - this.SuspendLayout(); - // - // pnlBtm - // - this.pnlBtm.Location = new System.Drawing.Point(1, 315); - this.pnlBtm.Size = new System.Drawing.Size(798, 55); - // - // btnCancel - // - this.btnCancel.Location = new System.Drawing.Point(670, 12); - this.btnCancel.Radius = 25; - this.btnCancel.Text = "关 闭"; - // - // btnOK - // - this.btnOK.Location = new System.Drawing.Point(555, 12); - this.btnOK.Radius = 25; - this.btnOK.Text = "保 存"; - // - // cbCustoType - // - this.cbCustoType.DataSource = null; - this.cbCustoType.DropDownStyle = Sunny.UI.UIDropDownStyle.DropDownList; - this.cbCustoType.FillColor = System.Drawing.Color.White; - this.cbCustoType.Font = new System.Drawing.Font("微软雅黑", 15.75F); - this.cbCustoType.Location = new System.Drawing.Point(518, 50); - this.cbCustoType.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); - this.cbCustoType.MinimumSize = new System.Drawing.Size(63, 0); - this.cbCustoType.Name = "cbCustoType"; - this.cbCustoType.Padding = new System.Windows.Forms.Padding(0, 0, 30, 2); - this.cbCustoType.Radius = 20; - this.cbCustoType.ReadOnly = true; - this.cbCustoType.Size = new System.Drawing.Size(250, 35); - this.cbCustoType.TabIndex = 124; - this.cbCustoType.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft; - this.cbCustoType.Watermark = ""; - // - // cbPassportType - // - this.cbPassportType.DataSource = null; - this.cbPassportType.DropDownStyle = Sunny.UI.UIDropDownStyle.DropDownList; - this.cbPassportType.FillColor = System.Drawing.Color.White; - this.cbPassportType.Font = new System.Drawing.Font("微软雅黑", 15.75F); - this.cbPassportType.Location = new System.Drawing.Point(518, 101); - this.cbPassportType.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); - this.cbPassportType.MinimumSize = new System.Drawing.Size(63, 0); - this.cbPassportType.Name = "cbPassportType"; - this.cbPassportType.Padding = new System.Windows.Forms.Padding(0, 0, 30, 2); - this.cbPassportType.Radius = 20; - this.cbPassportType.Size = new System.Drawing.Size(250, 35); - this.cbPassportType.TabIndex = 123; - this.cbPassportType.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft; - // - // cbSex - // - this.cbSex.DataSource = null; - this.cbSex.DropDownStyle = Sunny.UI.UIDropDownStyle.DropDownList; - this.cbSex.FillColor = System.Drawing.Color.White; - this.cbSex.Font = new System.Drawing.Font("微软雅黑", 15.75F); - this.cbSex.Location = new System.Drawing.Point(142, 155); - this.cbSex.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); - this.cbSex.MinimumSize = new System.Drawing.Size(63, 0); - this.cbSex.Name = "cbSex"; - this.cbSex.Padding = new System.Windows.Forms.Padding(0, 0, 30, 2); - this.cbSex.Radius = 20; - this.cbSex.Size = new System.Drawing.Size(250, 35); - this.cbSex.TabIndex = 122; - this.cbSex.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft; - // - // txtCustoNo - // - this.txtCustoNo.Cursor = System.Windows.Forms.Cursors.IBeam; - this.txtCustoNo.FillColor = System.Drawing.Color.White; - this.txtCustoNo.Font = new System.Drawing.Font("微软雅黑", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.txtCustoNo.Location = new System.Drawing.Point(142, 51); - this.txtCustoNo.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); - this.txtCustoNo.Maximum = 2147483647D; - this.txtCustoNo.Minimum = -2147483648D; - this.txtCustoNo.MinimumSize = new System.Drawing.Size(1, 1); - this.txtCustoNo.Name = "txtCustoNo"; - this.txtCustoNo.Padding = new System.Windows.Forms.Padding(5); - this.txtCustoNo.Radius = 20; - this.txtCustoNo.ReadOnly = true; - this.txtCustoNo.Size = new System.Drawing.Size(250, 35); - this.txtCustoNo.Style = Sunny.UI.UIStyle.Custom; - this.txtCustoNo.StyleCustomMode = true; - this.txtCustoNo.TabIndex = 121; - this.txtCustoNo.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft; - // - // txtCustoName - // - this.txtCustoName.Cursor = System.Windows.Forms.Cursors.IBeam; - this.txtCustoName.FillColor = System.Drawing.Color.White; - this.txtCustoName.Font = new System.Drawing.Font("微软雅黑", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.txtCustoName.Location = new System.Drawing.Point(142, 103); - this.txtCustoName.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); - this.txtCustoName.Maximum = 2147483647D; - this.txtCustoName.Minimum = -2147483648D; - this.txtCustoName.MinimumSize = new System.Drawing.Size(1, 1); - this.txtCustoName.Name = "txtCustoName"; - this.txtCustoName.Padding = new System.Windows.Forms.Padding(5); - this.txtCustoName.Radius = 20; - this.txtCustoName.Size = new System.Drawing.Size(250, 35); - this.txtCustoName.Style = Sunny.UI.UIStyle.Custom; - this.txtCustoName.StyleCustomMode = true; - this.txtCustoName.TabIndex = 120; - this.txtCustoName.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft; - // - // txtCardID - // - this.txtCardID.Cursor = System.Windows.Forms.Cursors.IBeam; - this.txtCardID.FillColor = System.Drawing.Color.White; - this.txtCardID.Font = new System.Drawing.Font("微软雅黑", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.txtCardID.Location = new System.Drawing.Point(518, 152); - this.txtCardID.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); - this.txtCardID.Maximum = 2147483647D; - this.txtCardID.Minimum = -2147483648D; - this.txtCardID.MinimumSize = new System.Drawing.Size(1, 1); - this.txtCardID.Name = "txtCardID"; - this.txtCardID.Padding = new System.Windows.Forms.Padding(5); - this.txtCardID.Radius = 20; - this.txtCardID.Size = new System.Drawing.Size(250, 35); - this.txtCardID.Style = Sunny.UI.UIStyle.Custom; - this.txtCardID.StyleCustomMode = true; - this.txtCardID.TabIndex = 119; - this.txtCardID.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft; - this.txtCardID.Validated += new System.EventHandler(this.txtCardID_Validated); - // - // txtTel - // - this.txtTel.Cursor = System.Windows.Forms.Cursors.IBeam; - this.txtTel.FillColor = System.Drawing.Color.White; - this.txtTel.Font = new System.Drawing.Font("微软雅黑", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.txtTel.Location = new System.Drawing.Point(518, 203); - this.txtTel.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); - this.txtTel.Maximum = 2147483647D; - this.txtTel.Minimum = -2147483648D; - this.txtTel.MinimumSize = new System.Drawing.Size(1, 1); - this.txtTel.Name = "txtTel"; - this.txtTel.Padding = new System.Windows.Forms.Padding(5); - this.txtTel.Radius = 20; - this.txtTel.Size = new System.Drawing.Size(250, 35); - this.txtTel.Style = Sunny.UI.UIStyle.Custom; - this.txtTel.StyleCustomMode = true; - this.txtTel.TabIndex = 118; - this.txtTel.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft; - // - // dtpBirthday - // - this.dtpBirthday.DropDownStyle = Sunny.UI.UIDropDownStyle.DropDownList; - this.dtpBirthday.FillColor = System.Drawing.Color.White; - this.dtpBirthday.Font = new System.Drawing.Font("Microsoft Sans Serif", 15.75F); - this.dtpBirthday.Location = new System.Drawing.Point(142, 207); - this.dtpBirthday.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); - this.dtpBirthday.MaxLength = 10; - this.dtpBirthday.MinimumSize = new System.Drawing.Size(63, 0); - this.dtpBirthday.Name = "dtpBirthday"; - this.dtpBirthday.Padding = new System.Windows.Forms.Padding(0, 0, 30, 2); - this.dtpBirthday.Radius = 20; - this.dtpBirthday.ReadOnly = true; - this.dtpBirthday.Size = new System.Drawing.Size(250, 31); - this.dtpBirthday.SymbolDropDown = 61555; - this.dtpBirthday.SymbolNormal = 61555; - this.dtpBirthday.TabIndex = 117; - this.dtpBirthday.Text = "2020-11-24"; - this.dtpBirthday.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft; - this.dtpBirthday.Value = new System.DateTime(2020, 11, 24, 22, 50, 36, 791); - // - // txtCustoAdress - // - this.txtCustoAdress.Cursor = System.Windows.Forms.Cursors.IBeam; - this.txtCustoAdress.FillColor = System.Drawing.Color.White; - this.txtCustoAdress.Font = new System.Drawing.Font("微软雅黑", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.txtCustoAdress.Location = new System.Drawing.Point(140, 255); - this.txtCustoAdress.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); - this.txtCustoAdress.Maximum = 2147483647D; - this.txtCustoAdress.Minimum = -2147483648D; - this.txtCustoAdress.MinimumSize = new System.Drawing.Size(1, 1); - this.txtCustoAdress.Name = "txtCustoAdress"; - this.txtCustoAdress.Padding = new System.Windows.Forms.Padding(5); - this.txtCustoAdress.Radius = 20; - this.txtCustoAdress.Size = new System.Drawing.Size(628, 35); - this.txtCustoAdress.Style = Sunny.UI.UIStyle.Custom; - this.txtCustoAdress.StyleCustomMode = true; - this.txtCustoAdress.TabIndex = 116; - this.txtCustoAdress.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft; + label10 = new Label(); + label9 = new Label(); + label8 = new Label(); + label7 = new Label(); + label6 = new Label(); + label5 = new Label(); + label4 = new Label(); + label3 = new Label(); + label2 = new Label(); + dtpDateOfBirth = new AntdUI.DatePicker(); + cboGender = new AntdUI.Dropdown(); + txtCustomerName = new AntdUI.Input(); + txtCustomerId = new AntdUI.Input(); + cboCustomerType = new AntdUI.Dropdown(); + cboPassportType = new AntdUI.Dropdown(); + txtCustomerCardID = new AntdUI.Input(); + txtCustomerTel = new AntdUI.Input(); + txtCustomerAddress = new AntdUI.Input(); + ucWindowHeader1 = new ucWindowHeader(); + btnOk = new AntdUI.Button(); + SuspendLayout(); // // label10 // - this.label10.AutoSize = true; - this.label10.Font = new System.Drawing.Font("微软雅黑", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.label10.Location = new System.Drawing.Point(33, 265); - this.label10.Name = "label10"; - this.label10.Size = new System.Drawing.Size(88, 25); - this.label10.TabIndex = 115; - this.label10.Text = "居住地址"; + label10.AutoSize = true; + label10.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); + label10.Location = new Point(38, 265); + label10.Name = "label10"; + label10.Size = new Size(88, 25); + label10.TabIndex = 115; + label10.Text = "居住地址"; // // label9 // - this.label9.AutoSize = true; - this.label9.Font = new System.Drawing.Font("微软雅黑", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.label9.Location = new System.Drawing.Point(414, 210); - this.label9.Name = "label9"; - this.label9.Size = new System.Drawing.Size(88, 25); - this.label9.TabIndex = 114; - this.label9.Text = "联系方式"; + label9.AutoSize = true; + label9.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); + label9.Location = new Point(419, 210); + label9.Name = "label9"; + label9.Size = new Size(88, 25); + label9.TabIndex = 114; + label9.Text = "联系方式"; // // label8 // - this.label8.AutoSize = true; - this.label8.Font = new System.Drawing.Font("微软雅黑", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.label8.Location = new System.Drawing.Point(414, 159); - this.label8.Name = "label8"; - this.label8.Size = new System.Drawing.Size(88, 25); - this.label8.TabIndex = 113; - this.label8.Text = "证件号码"; + label8.AutoSize = true; + label8.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); + label8.Location = new Point(419, 159); + label8.Name = "label8"; + label8.Size = new Size(88, 25); + label8.TabIndex = 113; + label8.Text = "证件号码"; // // label7 // - this.label7.AutoSize = true; - this.label7.Font = new System.Drawing.Font("微软雅黑", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.label7.Location = new System.Drawing.Point(414, 108); - this.label7.Name = "label7"; - this.label7.Size = new System.Drawing.Size(88, 25); - this.label7.TabIndex = 112; - this.label7.Text = "证件类型"; + label7.AutoSize = true; + label7.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); + label7.Location = new Point(419, 108); + label7.Name = "label7"; + label7.Size = new Size(88, 25); + label7.TabIndex = 112; + label7.Text = "证件类型"; // // label6 // - this.label6.AutoSize = true; - this.label6.Font = new System.Drawing.Font("微软雅黑", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.label6.Location = new System.Drawing.Point(414, 57); - this.label6.Name = "label6"; - this.label6.Size = new System.Drawing.Size(88, 25); - this.label6.TabIndex = 111; - this.label6.Text = "客户类型"; + label6.AutoSize = true; + label6.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); + label6.Location = new Point(419, 57); + label6.Name = "label6"; + label6.Size = new Size(88, 25); + label6.TabIndex = 111; + label6.Text = "客户类型"; // // label5 // - this.label5.AutoSize = true; - this.label5.Font = new System.Drawing.Font("微软雅黑", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.label5.Location = new System.Drawing.Point(35, 213); - this.label5.Name = "label5"; - this.label5.Size = new System.Drawing.Size(88, 25); - this.label5.TabIndex = 110; - this.label5.Text = "出生日期"; + label5.AutoSize = true; + label5.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); + label5.Location = new Point(40, 213); + label5.Name = "label5"; + label5.Size = new Size(88, 25); + label5.TabIndex = 110; + label5.Text = "出生日期"; // // label4 // - this.label4.AutoSize = true; - this.label4.Font = new System.Drawing.Font("微软雅黑", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.label4.Location = new System.Drawing.Point(35, 161); - this.label4.Name = "label4"; - this.label4.Size = new System.Drawing.Size(74, 25); - this.label4.TabIndex = 109; - this.label4.Text = "性 别"; + label4.AutoSize = true; + label4.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); + label4.Location = new Point(40, 161); + label4.Name = "label4"; + label4.Size = new Size(74, 25); + label4.TabIndex = 109; + label4.Text = "性 别"; // // label3 // - this.label3.AutoSize = true; - this.label3.Font = new System.Drawing.Font("微软雅黑", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.label3.Location = new System.Drawing.Point(35, 109); - this.label3.Name = "label3"; - this.label3.Size = new System.Drawing.Size(88, 25); - this.label3.TabIndex = 108; - this.label3.Text = "客户姓名"; + label3.AutoSize = true; + label3.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); + label3.Location = new Point(40, 109); + label3.Name = "label3"; + label3.Size = new Size(88, 25); + label3.TabIndex = 108; + label3.Text = "客户姓名"; // // label2 // - this.label2.AutoSize = true; - this.label2.Font = new System.Drawing.Font("微软雅黑", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.label2.Location = new System.Drawing.Point(35, 57); - this.label2.Name = "label2"; - this.label2.Size = new System.Drawing.Size(88, 25); - this.label2.TabIndex = 107; - this.label2.Text = "客户编号"; + label2.AutoSize = true; + label2.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); + label2.Location = new Point(40, 57); + label2.Name = "label2"; + label2.Size = new Size(88, 25); + label2.TabIndex = 107; + label2.Text = "客户编号"; + // + // dtpDateOfBirth + // + dtpDateOfBirth.Font = new Font("Noto Sans SC", 10F); + dtpDateOfBirth.Location = new Point(144, 204); + dtpDateOfBirth.Name = "dtpDateOfBirth"; + dtpDateOfBirth.Size = new Size(252, 43); + dtpDateOfBirth.TabIndex = 166; + // + // cboGender + // + cboGender.DropDownArrow = true; + cboGender.Font = new Font("Noto Sans SC", 12F); + cboGender.Location = new Point(145, 156); + cboGender.Name = "cboGender"; + cboGender.Placement = AntdUI.TAlignFrom.Bottom; + cboGender.Size = new Size(251, 40); + cboGender.TabIndex = 165; + cboGender.ToggleType = AntdUI.TTypeMini.Info; + // + // txtCustomerName + // + txtCustomerName.Font = new Font("Noto Sans SC", 12F); + txtCustomerName.Location = new Point(145, 103); + txtCustomerName.Name = "txtCustomerName"; + txtCustomerName.Size = new Size(252, 45); + txtCustomerName.TabIndex = 164; + // + // txtCustomerId + // + txtCustomerId.Font = new Font("Noto Sans SC", 12F); + txtCustomerId.Location = new Point(145, 50); + txtCustomerId.Name = "txtCustomerId"; + txtCustomerId.ReadOnly = true; + txtCustomerId.Size = new Size(252, 45); + txtCustomerId.TabIndex = 163; + // + // cboCustomerType + // + cboCustomerType.DropDownArrow = true; + cboCustomerType.Font = new Font("Noto Sans SC", 12F); + cboCustomerType.Location = new Point(513, 50); + cboCustomerType.Name = "cboCustomerType"; + cboCustomerType.Placement = AntdUI.TAlignFrom.Bottom; + cboCustomerType.Size = new Size(250, 40); + cboCustomerType.TabIndex = 170; + cboCustomerType.ToggleType = AntdUI.TTypeMini.Info; + // + // cboPassportType + // + cboPassportType.DropDownArrow = true; + cboPassportType.Font = new Font("Noto Sans SC", 12F); + cboPassportType.Location = new Point(513, 99); + cboPassportType.Name = "cboPassportType"; + cboPassportType.Placement = AntdUI.TAlignFrom.Bottom; + cboPassportType.Size = new Size(250, 40); + cboPassportType.TabIndex = 169; + cboPassportType.ToggleType = AntdUI.TTypeMini.Info; + // + // txtCustomerCardID + // + txtCustomerCardID.Font = new Font("Noto Sans SC", 12F); + txtCustomerCardID.Location = new Point(513, 148); + txtCustomerCardID.Name = "txtCustomerCardID"; + txtCustomerCardID.Size = new Size(250, 45); + txtCustomerCardID.TabIndex = 168; + txtCustomerCardID.Validated += txtCardID_Validated; + // + // txtCustomerTel + // + txtCustomerTel.Font = new Font("Noto Sans SC", 12F); + txtCustomerTel.Location = new Point(513, 202); + txtCustomerTel.Name = "txtCustomerTel"; + txtCustomerTel.Size = new Size(250, 45); + txtCustomerTel.TabIndex = 167; + // + // txtCustomerAddress + // + txtCustomerAddress.Font = new Font("Noto Sans SC", 12F); + txtCustomerAddress.Location = new Point(145, 253); + txtCustomerAddress.Name = "txtCustomerAddress"; + txtCustomerAddress.Size = new Size(618, 45); + txtCustomerAddress.TabIndex = 171; + // + // ucWindowHeader1 + // + ucWindowHeader1.Location = new Point(0, 0); + ucWindowHeader1.Name = "ucWindowHeader1"; + ucWindowHeader1.Size = new Size(800, 35); + ucWindowHeader1.TabIndex = 172; + // + // btnOk + // + btnOk.Font = new Font("Noto Sans SC", 11.9999981F, FontStyle.Regular, GraphicsUnit.Point, 0); + btnOk.Location = new Point(628, 309); + btnOk.Name = "btnOk"; + btnOk.Size = new Size(135, 45); + btnOk.TabIndex = 173; + btnOk.Text = "保 存"; + btnOk.Type = AntdUI.TTypeMini.Info; // // FrmEditInputs // - this.AutoScaleDimensions = new System.Drawing.SizeF(10F, 21F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(800, 373); - this.Controls.Add(this.cbCustoType); - this.Controls.Add(this.cbPassportType); - this.Controls.Add(this.cbSex); - this.Controls.Add(this.txtCustoNo); - this.Controls.Add(this.txtCustoName); - this.Controls.Add(this.txtCardID); - this.Controls.Add(this.txtTel); - this.Controls.Add(this.dtpBirthday); - this.Controls.Add(this.txtCustoAdress); - this.Controls.Add(this.label10); - this.Controls.Add(this.label9); - this.Controls.Add(this.label8); - this.Controls.Add(this.label7); - this.Controls.Add(this.label6); - this.Controls.Add(this.label5); - this.Controls.Add(this.label4); - this.Controls.Add(this.label3); - this.Controls.Add(this.label2); - this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); - this.Name = "FrmEditInputs"; - this.ShowTitleIcon = true; - this.Text = "添加会员信息"; - this.ButtonOkClick += new System.EventHandler(this.FrmEditInputs_ButtonOkClick); - this.ButtonCancelClick += new System.EventHandler(this.FrmEditInputs_ButtonCancelClick); - this.Load += new System.EventHandler(this.FrmEditInputs_Load); - this.Controls.SetChildIndex(this.pnlBtm, 0); - this.Controls.SetChildIndex(this.label2, 0); - this.Controls.SetChildIndex(this.label3, 0); - this.Controls.SetChildIndex(this.label4, 0); - this.Controls.SetChildIndex(this.label5, 0); - this.Controls.SetChildIndex(this.label6, 0); - this.Controls.SetChildIndex(this.label7, 0); - this.Controls.SetChildIndex(this.label8, 0); - this.Controls.SetChildIndex(this.label9, 0); - this.Controls.SetChildIndex(this.label10, 0); - this.Controls.SetChildIndex(this.txtCustoAdress, 0); - this.Controls.SetChildIndex(this.dtpBirthday, 0); - this.Controls.SetChildIndex(this.txtTel, 0); - this.Controls.SetChildIndex(this.txtCardID, 0); - this.Controls.SetChildIndex(this.txtCustoName, 0); - this.Controls.SetChildIndex(this.txtCustoNo, 0); - this.Controls.SetChildIndex(this.cbSex, 0); - this.Controls.SetChildIndex(this.cbPassportType, 0); - this.Controls.SetChildIndex(this.cbCustoType, 0); - this.pnlBtm.ResumeLayout(false); - this.ResumeLayout(false); - this.PerformLayout(); + AutoScaleMode = AutoScaleMode.None; + BackColor = Color.FromArgb(235, 243, 255); + ClientSize = new Size(800, 373); + Controls.Add(btnOk); + Controls.Add(ucWindowHeader1); + Controls.Add(txtCustomerAddress); + Controls.Add(cboCustomerType); + Controls.Add(cboPassportType); + Controls.Add(txtCustomerCardID); + Controls.Add(txtCustomerTel); + Controls.Add(dtpDateOfBirth); + Controls.Add(cboGender); + Controls.Add(txtCustomerName); + Controls.Add(txtCustomerId); + Controls.Add(label10); + Controls.Add(label9); + Controls.Add(label8); + Controls.Add(label7); + Controls.Add(label6); + Controls.Add(label5); + Controls.Add(label4); + Controls.Add(label3); + Controls.Add(label2); + Icon = (Icon)resources.GetObject("$this.Icon"); + Name = "FrmEditInputs"; + Text = "添加会员信息"; + Load += FrmEditInputs_Load; + ResumeLayout(false); + PerformLayout(); } #endregion - - private Sunny.UI.UIComboBox cbCustoType; - private Sunny.UI.UIComboBox cbPassportType; - private Sunny.UI.UIComboBox cbSex; - private Sunny.UI.UITextBox txtCustoNo; - private Sunny.UI.UITextBox txtCustoName; - private Sunny.UI.UITextBox txtCardID; - private Sunny.UI.UITextBox txtTel; - private Sunny.UI.UIDatePicker dtpBirthday; - private Sunny.UI.UITextBox txtCustoAdress; private System.Windows.Forms.Label label10; private System.Windows.Forms.Label label9; private System.Windows.Forms.Label label8; @@ -400,5 +285,16 @@ private System.Windows.Forms.Label label4; private System.Windows.Forms.Label label3; private System.Windows.Forms.Label label2; + private AntdUI.DatePicker dtpDateOfBirth; + private AntdUI.Dropdown cboGender; + private AntdUI.Input txtCustomerName; + private AntdUI.Input txtCustomerId; + private AntdUI.Dropdown cboCustomerType; + private AntdUI.Dropdown cboPassportType; + private AntdUI.Input txtCustomerCardID; + private AntdUI.Input txtCustomerTel; + private AntdUI.Input txtCustomerAddress; + private ucWindowHeader ucWindowHeader1; + private AntdUI.Button btnOk; } } \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmEditInputs.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmEditInputs.cs index 8e5c0ef..d7f5dc7 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmEditInputs.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmEditInputs.cs @@ -22,14 +22,16 @@ * */ +using AntdUI; using EOM.TSHotelManagement.Common; using EOM.TSHotelManagement.Common.Contract; using jvncorelib.CodeLib; +using jvncorelib.EntityLib; using Sunny.UI; namespace EOM.TSHotelManagement.FormUI { - public partial class FrmEditInputs : UIEditForm + public partial class FrmEditInputs : Window { private LoadingProgress? _loadingProgress; public FrmEditInputs(LoadingProgress? loadingProgress = null) @@ -44,7 +46,7 @@ namespace EOM.TSHotelManagement.FormUI private void FrmEditInputs_Load(object sender, EventArgs e) { string cardId = new UniqueCode().GetNewId("TS"); - txtCustoNo.Text = cardId; + txtCustomerId.Text = cardId; #region 加载客户类型信息 var result = HttpHelper.Request(ApiConstants.Base_SelectCustoTypeAllCanUse); @@ -55,11 +57,7 @@ namespace EOM.TSHotelManagement.FormUI return; } var lstDataGrid = customerTypes.Data.Items; - this.cbCustoType.DataSource = lstDataGrid; - this.cbCustoType.DisplayMember = nameof(ReadCustoTypeOutputDto.CustomerTypeName); - this.cbCustoType.ValueMember = nameof(ReadCustoTypeOutputDto.CustomerType); - this.cbCustoType.SelectedIndex = 0; - this.cbCustoType.ReadOnly = true; + this.cboCustomerType.Items.AddRange(lstDataGrid.Select(item => new AntdUI.SelectItem(item.CustomerTypeName, item.CustomerType)).ToArray()); #endregion #region 加载证件类型信息 @@ -71,10 +69,7 @@ namespace EOM.TSHotelManagement.FormUI return; } var passPorts = passportTypes.Data.Items; - this.cbPassportType.DataSource = passPorts; - this.cbPassportType.DisplayMember = nameof(ReadPassportTypeOutputDto.PassportName); - this.cbPassportType.ValueMember = nameof(ReadPassportTypeOutputDto.PassportId); - this.cbPassportType.SelectedIndex = 0; + this.cboPassportType.Items.AddRange(passPorts.Select(item => new AntdUI.SelectItem(item.PassportName, item.PassportId)).ToArray()); #endregion #region 加载性别信息 @@ -91,35 +86,31 @@ namespace EOM.TSHotelManagement.FormUI return; } var listSexType = genderTypes.Data.Items; - this.cbSex.DataSource = listSexType; - this.cbSex.DisplayMember = nameof(ReadGenderTypeOutputDto.Description); - this.cbSex.ValueMember = nameof(ReadGenderTypeOutputDto.Id); - this.cbSex.SelectedIndex = 0; + this.cboGender.Items.AddRange(listSexType.Select(item => new AntdUI.SelectItem(item.Description, item.Id)).ToArray()); #endregion if (this.Text.Equals("修改客户信息")) { - txtCustoNo.Text = FrmCustomerManager.cm_CustoNo; - txtCustoName.Text = FrmCustomerManager.cm_CustoName; - txtCustoAdress.Text = FrmCustomerManager.cm_CustoAddress; - cbCustoType.SelectedValue = FrmCustomerManager.cm_CustoType; - cbSex.SelectedValue = FrmCustomerManager.cm_CustoSex; - cbPassportType.SelectedValue = FrmCustomerManager.cm_PassportType; - dtpBirthday.Value = FrmCustomerManager.cm_CustoBirth; - txtCardID.Text = FrmCustomerManager.cm_CustoIdCardNumber; - txtCustoAdress.Text = FrmCustomerManager.cm_CustoAddress; - txtTel.Text = FrmCustomerManager.cm_CustoTel; - btnOK.Text = "修改"; - - this.ButtonOkClick -= new EventHandler(FrmEditInputs_ButtonOkClick); - this.ButtonOkClick += new EventHandler(btnOK_UpdClick); - - if (!cbPassportType.SelectedText.ToString().Contains("身份证")) - { - dtpBirthday.Enabled = true; - dtpBirthday.ReadOnly = false; - return; - } + txtCustomerId.Text = FrmCustomerManager.cm_CustoNo; + txtCustomerName.Text = FrmCustomerManager.cm_CustoName; + txtCustomerAddress.Text = FrmCustomerManager.cm_CustoAddress; + cboCustomerType.SelectedValue = FrmCustomerManager.cm_CustoType; + cboGender.SelectedValue = FrmCustomerManager.cm_CustoSex; + cboPassportType.SelectedValue = FrmCustomerManager.cm_PassportType; + dtpDateOfBirth.Value = FrmCustomerManager.cm_CustoBirth; + txtCustomerCardID.Text = FrmCustomerManager.cm_CustoIdCardNumber; + txtCustomerTel.Text = FrmCustomerManager.cm_CustoTel; + btnOk.Text = "修改"; + + this.btnOk.Click -= new EventHandler(FrmEditInputs_ButtonOkClick); + this.btnOk.Click += new EventHandler(btnOK_UpdClick); + + //if (!cboPassportType.SelectedValue.ToString().Contains("身份证")) + //{ + // dtpBirthday.Enabled = true; + // dtpBirthday.ReadOnly = false; + // return; + //} } } @@ -129,20 +120,20 @@ namespace EOM.TSHotelManagement.FormUI UpdateCustomerInputDto custo = new UpdateCustomerInputDto() { Id = FrmCustomerManager.cm_CustoId, - CustomerNumber = txtCustoNo.Text, - CustomerName = txtCustoName.Text, - CustomerGender = Convert.ToInt32(cbSex.SelectedValue.ToString()), - DateOfBirth = DateOnly.FromDateTime(dtpBirthday.Value.Date), - CustomerType = Convert.ToInt32(cbCustoType.SelectedValue.ToString()), - PassportId = Convert.ToInt32(cbPassportType.SelectedValue), - IdCardNumber = txtCardID.Text, - CustomerPhoneNumber = txtTel.Text, - CustomerAddress = txtCustoAdress.Text, + CustomerNumber = txtCustomerId.Text, + CustomerName = txtCustomerName.Text, + CustomerGender = Convert.ToInt32(cboGender.SelectedValue.ToString()), + DateOfBirth = DateOnly.FromDateTime(Convert.ToDateTime(dtpDateOfBirth.Value).Date), + CustomerType = Convert.ToInt32(cboCustomerType.SelectedValue.ToString()), + PassportId = Convert.ToInt32(cboPassportType.SelectedValue), + IdCardNumber = txtCustomerCardID.Text, + CustomerPhoneNumber = txtCustomerTel.Text, + CustomerAddress = txtCustomerAddress.Text, IsDelete = 0, DataChgUsr = LoginInfo.WorkerNo, }; - result = HttpHelper.Request(ApiConstants.Customer_UpdCustomerInfo, HttpHelper.ModelToJson(custo)); + result = HttpHelper.Request(ApiConstants.Customer_UpdCustomerInfo, custo.ModelToJson()); var response = HttpHelper.JsonToModel(result.message); if (response.Code != BusinessStatusCode.Success) { @@ -156,20 +147,6 @@ namespace EOM.TSHotelManagement.FormUI #endregion this.Close(); FrmCustomerManager.ReloadCustomer(false); - - foreach (Control Ctrol in this.Controls) - { - if (Ctrol is Sunny.UI.UITextBox) - { - Ctrol.Text = ""; - } - if (Ctrol is Sunny.UI.UIComboBox) - { - this.cbSex.SelectedIndex = 0; - this.cbCustoType.SelectedIndex = 0; - this.cbPassportType.SelectedIndex = 0; - } - } } private void FrmEditInputs_ButtonOkClick(object sender, EventArgs e) @@ -177,20 +154,20 @@ namespace EOM.TSHotelManagement.FormUI CreateCustomerInputDto custo = new CreateCustomerInputDto() { DataInsDate = DateTime.Now, - CustomerNumber = txtCustoNo.Text, - CustomerName = txtCustoName.Text, - CustomerGender = Convert.ToInt32(cbSex.SelectedValue.ToString()), - DateOfBirth = dtpBirthday.Value.Date, - CustomerType = Convert.ToInt32(cbCustoType.SelectedValue.ToString()), - PassportId = Convert.ToInt32(cbPassportType.SelectedValue.ToString()), - IdCardNumber = txtCardID.Text, - CustomerPhoneNumber = txtTel.Text, - CustomerAddress = txtCustoAdress.Text, + CustomerNumber = txtCustomerId.Text, + CustomerName = txtCustomerName.Text, + CustomerGender = Convert.ToInt32(cboGender.SelectedValue.ToString()), + DateOfBirth = Convert.ToDateTime(dtpDateOfBirth.Value).Date, + CustomerType = Convert.ToInt32(cboCustomerType.SelectedValue.ToString()), + PassportId = Convert.ToInt32(cboPassportType.SelectedValue.ToString()), + IdCardNumber = txtCustomerCardID.Text, + CustomerPhoneNumber = txtCustomerTel.Text, + CustomerAddress = txtCustomerAddress.Text, DataInsUsr = LoginInfo.WorkerNo, IsDelete = 0 }; - result = HttpHelper.Request(ApiConstants.Customer_InsertCustomerInfo, HttpHelper.ModelToJson(custo)); + result = HttpHelper.Request(ApiConstants.Customer_InsertCustomerInfo, custo.ModelToJson()); var response = HttpHelper.JsonToModel(result.message); if (response.Code != BusinessStatusCode.Success) { @@ -203,47 +180,26 @@ namespace EOM.TSHotelManagement.FormUI RecordHelper.Record(LoginInfo.WorkerNo + "-" + LoginInfo.WorkerName + "在" + Convert.ToDateTime(DateTime.Now) + "位于" + LoginInfo.SoftwareVersion + "执行:" + "添加了一名客户,客户编号为:" + custo.CustomerNumber, Common.Core.LogLevel.Critical); #endregion this.Close(); - - - foreach (Control Ctrol in this.Controls) - { - if (Ctrol is Sunny.UI.UITextBox) - { - Ctrol.Text = ""; - } - if (Ctrol is Sunny.UI.UIComboBox) - { - this.cbSex.SelectedIndex = 0; - this.cbCustoType.SelectedIndex = 0; - this.cbPassportType.SelectedIndex = 0; - } - } - } - - - private void FrmEditInputs_ButtonCancelClick(object sender, EventArgs e) - { - this.Close(); } private void txtCardID_Validated(object sender, EventArgs e) { //获取得到输入的身份证号码 - string identityCard = txtCardID.Text.Trim(); + string identityCard = txtCustomerCardID.Text.Trim(); - if (!cbPassportType.Text.ToString().Contains("身份证")) + if (!cboPassportType.Text.ToString().Contains("身份证")) { - dtpBirthday.Enabled = true; - dtpBirthday.ReadOnly = false; + dtpDateOfBirth.Enabled = true; + dtpDateOfBirth.ReadOnly = false; return; } if (string.IsNullOrEmpty(identityCard)) { //身份证号码不能为空,如果为空返回 UIMessageBox.ShowError("身份证号码不能为空!"); - if (txtCardID.CanFocus) + if (txtCustomerCardID.CanFocus) { - txtCardID.Focus();//设置当前输入焦点为txtCardID_identityCard + txtCustomerCardID.Focus();//设置当前输入焦点为txtCardID_identityCard } return; } @@ -253,9 +209,9 @@ namespace EOM.TSHotelManagement.FormUI if (identityCard.Length != 15 && identityCard.Length != 18) { UIMessageBox.ShowWarning("身份证号码为15位或18位,请检查!"); - if (txtCardID.CanFocus) + if (txtCustomerCardID.CanFocus) { - txtCardID.Focus(); + txtCustomerCardID.Focus(); } return; } @@ -264,16 +220,16 @@ namespace EOM.TSHotelManagement.FormUI if (identityCard.Length == 18) { var result = ApplicationUtil.SearchCode(identityCard); - if (result.message.IsNullOrEmpty()) //如果没有错误消息输出,则代表成功 + if (string.IsNullOrEmpty(result.message)) //如果没有错误消息输出,则代表成功 { try { - cbSex.Text = result.sex ?? string.Empty; - txtCustoAdress.Text = result.address ?? string.Empty; + cboGender.Text = result.sex ?? string.Empty; + txtCustomerAddress.Text = result.address ?? string.Empty; if (DateTime.TryParse(result.birthday, out DateTime parsedDate)) { - dtpBirthday.Value = parsedDate; + dtpDateOfBirth.Value = parsedDate; } else { @@ -286,10 +242,6 @@ namespace EOM.TSHotelManagement.FormUI UIMessageBox.ShowError("请正确输入证件号码!"); return; } - finally - { - cbPassportType.SelectedIndex = 0; - } } else { diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmEditInputs.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmEditInputs.resx index 79f7d21..a70dd33 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmEditInputs.resx +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmEditInputs.resx @@ -1,17 +1,17 @@  - diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.Designer.cs index 7c21ae0..c20059f 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.Designer.cs @@ -29,528 +29,109 @@ namespace EOM.TSHotelManagement.FormUI /// private void InitializeComponent() { + AntdUI.Tabs.StyleCard styleCard1 = new AntdUI.Tabs.StyleCard(); System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmMySpace)); - label7 = new Label(); - btnUpdWorker = new Sunny.UI.UIButton(); - cbWorkerNation = new Sunny.UI.UIComboBox(); - label1 = new Label(); - cboWorkerClub = new Sunny.UI.UIComboBox(); - cboWorkerPosition = new Sunny.UI.UIComboBox(); - cboSex = new Sunny.UI.UIComboBox(); - txtWorkerNo = new Sunny.UI.UITextBox(); - txtWorkerName = new Sunny.UI.UITextBox(); - txtTel = new Sunny.UI.UITextBox(); - txtAddress = new Sunny.UI.UITextBox(); - label2 = new Label(); - label5 = new Label(); - label16 = new Label(); - label30 = new Label(); - label31 = new Label(); - label32 = new Label(); - openPic = new OpenFileDialog(); - uiTabControlMenu2 = new Sunny.UI.UITabControlMenu(); - tabPage1 = new TabPage(); - tabPage2 = new TabPage(); - avatar3 = new AntdUI.Avatar(); - txtOldPassword = new AntdUI.Input(); - lblEmployeeId = new AntdUI.Label(); - avatar2 = new AntdUI.Avatar(); - avatar1 = new AntdUI.Avatar(); - btnUpdatePassword = new AntdUI.Button(); - txtNewPassword = new AntdUI.Input(); - tabPage3 = new TabPage(); - label4 = new AntdUI.Label(); - picWorkerPic = new PictureBox(); - uiTabControlMenu2.SuspendLayout(); - tabPage1.SuspendLayout(); - tabPage2.SuspendLayout(); - tabPage3.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)picWorkerPic).BeginInit(); + ucWindowHeader1 = new ucWindowHeader(); + tbPersonnelCenterTabs = new AntdUI.Tabs(); + tbPersonnelInfo = new AntdUI.TabPage(); + pnlPage = new Panel(); + tpPersonnelInfo = new AntdUI.TabPage(); + tpAccountSecurity = new AntdUI.TabPage(); + tpAccountAvatar = new AntdUI.TabPage(); + tbPersonnelCenterTabs.SuspendLayout(); + tbPersonnelInfo.SuspendLayout(); SuspendLayout(); // - // label7 - // - label7.AutoSize = true; - label7.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label7.Location = new Point(58, 171); - label7.Name = "label7"; - label7.Size = new Size(88, 25); - label7.TabIndex = 131; - label7.Text = "联系方式"; - // - // btnUpdWorker - // - btnUpdWorker.Cursor = Cursors.Hand; - btnUpdWorker.Font = new Font("微软雅黑", 12F); - btnUpdWorker.Location = new Point(562, 270); - btnUpdWorker.MinimumSize = new Size(1, 1); - btnUpdWorker.Name = "btnUpdWorker"; - btnUpdWorker.Radius = 20; - btnUpdWorker.Size = new Size(109, 42); - btnUpdWorker.TabIndex = 130; - btnUpdWorker.Text = "修 改"; - btnUpdWorker.TipsFont = new Font("宋体", 9F, FontStyle.Regular, GraphicsUnit.Point, 134); - btnUpdWorker.Click += btnUpdWorker_Click; - // - // cbWorkerNation - // - cbWorkerNation.DataSource = null; - cbWorkerNation.DropDownStyle = Sunny.UI.UIDropDownStyle.DropDownList; - cbWorkerNation.FillColor = Color.White; - cbWorkerNation.Font = new Font("微软雅黑", 15.75F); - cbWorkerNation.ItemHoverColor = Color.FromArgb(155, 200, 255); - cbWorkerNation.ItemSelectForeColor = Color.FromArgb(235, 243, 255); - cbWorkerNation.Location = new Point(466, 116); - cbWorkerNation.Margin = new Padding(4, 5, 4, 5); - cbWorkerNation.MinimumSize = new Size(63, 0); - cbWorkerNation.Name = "cbWorkerNation"; - cbWorkerNation.Padding = new Padding(0, 0, 30, 2); - cbWorkerNation.Radius = 20; - cbWorkerNation.Size = new Size(203, 35); - cbWorkerNation.Style = Sunny.UI.UIStyle.Custom; - cbWorkerNation.SymbolSize = 24; - cbWorkerNation.TabIndex = 129; - cbWorkerNation.TextAlignment = ContentAlignment.MiddleLeft; - cbWorkerNation.Watermark = ""; - cbWorkerNation.SelectedIndexChanged += cbWorkerNation_SelectedIndexChanged; - // - // label1 - // - label1.AutoSize = true; - label1.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label1.Location = new Point(369, 119); - label1.Name = "label1"; - label1.Size = new Size(86, 25); - label1.TabIndex = 128; - label1.Text = "民 族"; - // - // cboWorkerClub - // - cboWorkerClub.DataSource = null; - cboWorkerClub.DropDownStyle = Sunny.UI.UIDropDownStyle.DropDownList; - cboWorkerClub.FillColor = Color.White; - cboWorkerClub.Font = new Font("微软雅黑", 15.75F); - cboWorkerClub.ItemHoverColor = Color.FromArgb(155, 200, 255); - cboWorkerClub.ItemSelectForeColor = Color.FromArgb(235, 243, 255); - cboWorkerClub.Location = new Point(467, 12); - cboWorkerClub.Margin = new Padding(4, 5, 4, 5); - cboWorkerClub.MinimumSize = new Size(63, 0); - cboWorkerClub.Name = "cboWorkerClub"; - cboWorkerClub.Padding = new Padding(0, 0, 30, 2); - cboWorkerClub.Radius = 20; - cboWorkerClub.ReadOnly = true; - cboWorkerClub.Size = new Size(203, 35); - cboWorkerClub.Style = Sunny.UI.UIStyle.Custom; - cboWorkerClub.SymbolSize = 24; - cboWorkerClub.TabIndex = 125; - cboWorkerClub.TextAlignment = ContentAlignment.MiddleLeft; - cboWorkerClub.Watermark = ""; - // - // cboWorkerPosition - // - cboWorkerPosition.DataSource = null; - cboWorkerPosition.DropDownStyle = Sunny.UI.UIDropDownStyle.DropDownList; - cboWorkerPosition.FillColor = Color.White; - cboWorkerPosition.Font = new Font("微软雅黑", 15.75F); - cboWorkerPosition.ItemHoverColor = Color.FromArgb(155, 200, 255); - cboWorkerPosition.ItemSelectForeColor = Color.FromArgb(235, 243, 255); - cboWorkerPosition.Location = new Point(467, 64); - cboWorkerPosition.Margin = new Padding(4, 5, 4, 5); - cboWorkerPosition.MinimumSize = new Size(63, 0); - cboWorkerPosition.Name = "cboWorkerPosition"; - cboWorkerPosition.Padding = new Padding(0, 0, 30, 2); - cboWorkerPosition.Radius = 20; - cboWorkerPosition.ReadOnly = true; - cboWorkerPosition.Size = new Size(203, 35); - cboWorkerPosition.Style = Sunny.UI.UIStyle.Custom; - cboWorkerPosition.SymbolSize = 24; - cboWorkerPosition.TabIndex = 124; - cboWorkerPosition.TextAlignment = ContentAlignment.MiddleLeft; - cboWorkerPosition.Watermark = ""; - // - // cboSex - // - cboSex.DataSource = null; - cboSex.DropDownStyle = Sunny.UI.UIDropDownStyle.DropDownList; - cboSex.FillColor = Color.White; - cboSex.Font = new Font("微软雅黑", 15.75F); - cboSex.ItemHoverColor = Color.FromArgb(155, 200, 255); - cboSex.ItemSelectForeColor = Color.FromArgb(235, 243, 255); - cboSex.Location = new Point(155, 116); - cboSex.Margin = new Padding(4, 5, 4, 5); - cboSex.MinimumSize = new Size(63, 0); - cboSex.Name = "cboSex"; - cboSex.Padding = new Padding(0, 0, 30, 2); - cboSex.Radius = 20; - cboSex.Size = new Size(203, 35); - cboSex.Style = Sunny.UI.UIStyle.Custom; - cboSex.SymbolSize = 24; - cboSex.TabIndex = 123; - cboSex.TextAlignment = ContentAlignment.MiddleLeft; - cboSex.Watermark = ""; - // - // txtWorkerNo - // - txtWorkerNo.Cursor = Cursors.IBeam; - txtWorkerNo.Font = new Font("微软雅黑", 15.75F, FontStyle.Regular, GraphicsUnit.Point, 134); - txtWorkerNo.Location = new Point(156, 12); - txtWorkerNo.Margin = new Padding(4, 5, 4, 5); - txtWorkerNo.MinimumSize = new Size(1, 1); - txtWorkerNo.Name = "txtWorkerNo"; - txtWorkerNo.Padding = new Padding(5); - txtWorkerNo.Radius = 20; - txtWorkerNo.ReadOnly = true; - txtWorkerNo.ShowText = false; - txtWorkerNo.Size = new Size(203, 35); - txtWorkerNo.Style = Sunny.UI.UIStyle.Custom; - txtWorkerNo.StyleCustomMode = true; - txtWorkerNo.TabIndex = 122; - txtWorkerNo.TextAlignment = ContentAlignment.MiddleLeft; - txtWorkerNo.Watermark = ""; - // - // txtWorkerName - // - txtWorkerName.Cursor = Cursors.IBeam; - txtWorkerName.Font = new Font("微软雅黑", 15.75F, FontStyle.Regular, GraphicsUnit.Point, 134); - txtWorkerName.Location = new Point(156, 64); - txtWorkerName.Margin = new Padding(4, 5, 4, 5); - txtWorkerName.MinimumSize = new Size(1, 1); - txtWorkerName.Name = "txtWorkerName"; - txtWorkerName.Padding = new Padding(5); - txtWorkerName.Radius = 20; - txtWorkerName.ShowText = false; - txtWorkerName.Size = new Size(203, 35); - txtWorkerName.Style = Sunny.UI.UIStyle.Custom; - txtWorkerName.StyleCustomMode = true; - txtWorkerName.TabIndex = 121; - txtWorkerName.TextAlignment = ContentAlignment.MiddleLeft; - txtWorkerName.Watermark = ""; - // - // txtTel - // - txtTel.Cursor = Cursors.IBeam; - txtTel.Font = new Font("微软雅黑", 15.75F, FontStyle.Regular, GraphicsUnit.Point, 134); - txtTel.Location = new Point(156, 164); - txtTel.Margin = new Padding(4, 5, 4, 5); - txtTel.MinimumSize = new Size(1, 1); - txtTel.Name = "txtTel"; - txtTel.Padding = new Padding(5); - txtTel.Radius = 20; - txtTel.ShowText = false; - txtTel.Size = new Size(515, 35); - txtTel.Style = Sunny.UI.UIStyle.Custom; - txtTel.StyleCustomMode = true; - txtTel.TabIndex = 119; - txtTel.TextAlignment = ContentAlignment.MiddleLeft; - txtTel.Watermark = ""; - // - // txtAddress - // - txtAddress.Cursor = Cursors.IBeam; - txtAddress.Font = new Font("微软雅黑", 15.75F, FontStyle.Regular, GraphicsUnit.Point, 134); - txtAddress.Location = new Point(156, 216); - txtAddress.Margin = new Padding(4, 5, 4, 5); - txtAddress.MinimumSize = new Size(1, 1); - txtAddress.Name = "txtAddress"; - txtAddress.Padding = new Padding(5); - txtAddress.Radius = 20; - txtAddress.ShowText = false; - txtAddress.Size = new Size(515, 35); - txtAddress.Style = Sunny.UI.UIStyle.Custom; - txtAddress.StyleCustomMode = true; - txtAddress.TabIndex = 117; - txtAddress.TextAlignment = ContentAlignment.MiddleLeft; - txtAddress.Watermark = ""; - // - // label2 - // - label2.AutoSize = true; - label2.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label2.Location = new Point(58, 221); - label2.Name = "label2"; - label2.Size = new Size(88, 25); - label2.TabIndex = 115; - label2.Text = "居住地址"; - // - // label5 - // - label5.AutoSize = true; - label5.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label5.Location = new Point(369, 69); - label5.Name = "label5"; - label5.Size = new Size(88, 25); - label5.TabIndex = 112; - label5.Text = "现任职位"; - // - // label16 - // - label16.AutoSize = true; - label16.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label16.Location = new Point(369, 18); - label16.Name = "label16"; - label16.Size = new Size(88, 25); - label16.TabIndex = 111; - label16.Text = "所在部门"; - // - // label30 - // - label30.AutoSize = true; - label30.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label30.Location = new Point(58, 119); - label30.Name = "label30"; - label30.Size = new Size(86, 25); - label30.TabIndex = 109; - label30.Text = "性 别"; - // - // label31 - // - label31.AutoSize = true; - label31.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label31.Location = new Point(58, 69); - label31.Name = "label31"; - label31.Size = new Size(88, 25); - label31.TabIndex = 108; - label31.Text = "员工姓名"; - // - // label32 - // - label32.AutoSize = true; - label32.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label32.Location = new Point(58, 18); - label32.Name = "label32"; - label32.Size = new Size(88, 25); - label32.TabIndex = 107; - label32.Text = "员工编号"; - // - // openPic - // - openPic.FileName = "openFileDialog1"; - openPic.Filter = "PNG文件|*.png|JPG文件|*.jpg|位图文件|*.bmp"; - openPic.FileOk += openPic_FileOk; - // - // uiTabControlMenu2 - // - uiTabControlMenu2.Alignment = TabAlignment.Left; - uiTabControlMenu2.Controls.Add(tabPage1); - uiTabControlMenu2.Controls.Add(tabPage2); - uiTabControlMenu2.Controls.Add(tabPage3); - uiTabControlMenu2.DrawMode = TabDrawMode.OwnerDrawFixed; - uiTabControlMenu2.Font = new Font("宋体", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); - uiTabControlMenu2.Location = new Point(3, 38); - uiTabControlMenu2.MenuStyle = Sunny.UI.UIMenuStyle.Custom; - uiTabControlMenu2.Multiline = true; - uiTabControlMenu2.Name = "uiTabControlMenu2"; - uiTabControlMenu2.SelectedIndex = 0; - uiTabControlMenu2.Size = new Size(929, 546); - uiTabControlMenu2.SizeMode = TabSizeMode.Fixed; - uiTabControlMenu2.TabBackColor = Color.FromArgb(235, 243, 255); - uiTabControlMenu2.TabIndex = 15; - uiTabControlMenu2.TabSelectedColor = Color.Snow; - // - // tabPage1 - // - tabPage1.Controls.Add(label7); - tabPage1.Controls.Add(label32); - tabPage1.Controls.Add(btnUpdWorker); - tabPage1.Controls.Add(label31); - tabPage1.Controls.Add(cbWorkerNation); - tabPage1.Controls.Add(label30); - tabPage1.Controls.Add(label1); - tabPage1.Controls.Add(label16); - tabPage1.Controls.Add(cboWorkerClub); - tabPage1.Controls.Add(label5); - tabPage1.Controls.Add(cboWorkerPosition); - tabPage1.Controls.Add(label2); - tabPage1.Controls.Add(cboSex); - tabPage1.Controls.Add(txtAddress); - tabPage1.Controls.Add(txtWorkerNo); - tabPage1.Controls.Add(txtTel); - tabPage1.Controls.Add(txtWorkerName); - tabPage1.Location = new Point(201, 0); - tabPage1.Name = "tabPage1"; - tabPage1.Size = new Size(728, 546); - tabPage1.TabIndex = 0; - tabPage1.Text = "个人信息"; - tabPage1.UseVisualStyleBackColor = true; - // - // tabPage2 - // - tabPage2.Controls.Add(avatar3); - tabPage2.Controls.Add(txtOldPassword); - tabPage2.Controls.Add(lblEmployeeId); - tabPage2.Controls.Add(avatar2); - tabPage2.Controls.Add(avatar1); - tabPage2.Controls.Add(btnUpdatePassword); - tabPage2.Controls.Add(txtNewPassword); - tabPage2.Location = new Point(201, 0); - tabPage2.Name = "tabPage2"; - tabPage2.Size = new Size(728, 546); - tabPage2.TabIndex = 1; - tabPage2.Text = "账号安全"; - tabPage2.UseVisualStyleBackColor = true; - // - // avatar3 - // - avatar3.Image = (Image)resources.GetObject("avatar3.Image"); - avatar3.ImageFit = AntdUI.TFit.None; - avatar3.Location = new Point(224, 204); - avatar3.Name = "avatar3"; - avatar3.Size = new Size(45, 43); - avatar3.TabIndex = 47; - avatar3.Text = "a"; - // - // txtOldPassword - // - txtOldPassword.BackColor = Color.White; - txtOldPassword.Font = new Font("Microsoft YaHei UI", 14F); - txtOldPassword.Location = new Point(267, 201); - txtOldPassword.Name = "txtOldPassword"; - txtOldPassword.PasswordChar = '*'; - txtOldPassword.PasswordCopy = true; - txtOldPassword.PlaceholderColorExtend = ""; - txtOldPassword.PlaceholderText = ""; - txtOldPassword.Size = new Size(238, 52); - txtOldPassword.TabIndex = 46; - // - // lblEmployeeId - // - lblEmployeeId.Location = new Point(267, 131); - lblEmployeeId.Name = "lblEmployeeId"; - lblEmployeeId.Size = new Size(238, 43); - lblEmployeeId.TabIndex = 45; - lblEmployeeId.Text = ""; - lblEmployeeId.TextAlign = ContentAlignment.MiddleCenter; - // - // avatar2 - // - avatar2.Image = (Image)resources.GetObject("avatar2.Image"); - avatar2.ImageFit = AntdUI.TFit.None; - avatar2.Location = new Point(224, 284); - avatar2.Name = "avatar2"; - avatar2.Size = new Size(45, 43); - avatar2.TabIndex = 44; - avatar2.Text = "a"; - // - // avatar1 - // - avatar1.Image = (Image)resources.GetObject("avatar1.Image"); - avatar1.ImageFit = AntdUI.TFit.None; - avatar1.Location = new Point(224, 131); - avatar1.Name = "avatar1"; - avatar1.Size = new Size(45, 43); - avatar1.TabIndex = 43; - avatar1.Text = "a"; - // - // btnUpdatePassword - // - btnUpdatePassword.Font = new Font("Microsoft YaHei UI", 12F); - btnUpdatePassword.Location = new Point(277, 358); - btnUpdatePassword.Name = "btnUpdatePassword"; - btnUpdatePassword.Radius = 8; - btnUpdatePassword.Shape = AntdUI.TShape.Round; - btnUpdatePassword.Size = new Size(191, 57); - btnUpdatePassword.TabIndex = 42; - btnUpdatePassword.Text = "修改密码"; - btnUpdatePassword.Type = AntdUI.TTypeMini.Primary; - btnUpdatePassword.Click += btnUpdatePassword_Click; - // - // txtNewPassword - // - txtNewPassword.BackColor = Color.White; - txtNewPassword.Font = new Font("Microsoft YaHei UI", 14F); - txtNewPassword.Location = new Point(267, 280); - txtNewPassword.Name = "txtNewPassword"; - txtNewPassword.PasswordChar = '*'; - txtNewPassword.PasswordCopy = true; - txtNewPassword.PlaceholderColorExtend = ""; - txtNewPassword.PlaceholderText = ""; - txtNewPassword.Size = new Size(238, 52); - txtNewPassword.TabIndex = 41; - // - // tabPage3 - // - tabPage3.Controls.Add(label4); - tabPage3.Controls.Add(picWorkerPic); - tabPage3.Location = new Point(201, 0); - tabPage3.Name = "tabPage3"; - tabPage3.Size = new Size(728, 546); - tabPage3.TabIndex = 2; - tabPage3.Text = "账号头像"; - tabPage3.UseVisualStyleBackColor = true; - // - // label4 - // - label4.Location = new Point(257, 416); - label4.Name = "label4"; - label4.Size = new Size(215, 23); - label4.TabIndex = 1; - label4.Text = "Tips:头像大小不能超过1MB"; - // - // picWorkerPic - // - picWorkerPic.BackgroundImage = Properties.Resources.账号; - picWorkerPic.BackgroundImageLayout = ImageLayout.Stretch; - picWorkerPic.Location = new Point(257, 150); - picWorkerPic.Name = "picWorkerPic"; - picWorkerPic.Size = new Size(215, 246); - picWorkerPic.SizeMode = PictureBoxSizeMode.StretchImage; - picWorkerPic.TabIndex = 0; - picWorkerPic.TabStop = false; - picWorkerPic.Click += picWorkerPic_Click; + // ucWindowHeader1 + // + ucWindowHeader1.Location = new Point(-2, 0); + ucWindowHeader1.Name = "ucWindowHeader1"; + ucWindowHeader1.Size = new Size(641, 35); + ucWindowHeader1.TabIndex = 16; + // + // tbPersonnelCenterTabs + // + tbPersonnelCenterTabs.Controls.Add(tbPersonnelInfo); + tbPersonnelCenterTabs.Controls.Add(tpPersonnelInfo); + tbPersonnelCenterTabs.Controls.Add(tpAccountSecurity); + tbPersonnelCenterTabs.Controls.Add(tpAccountAvatar); + tbPersonnelCenterTabs.Font = new Font("Noto Sans SC", 10.5F, FontStyle.Regular, GraphicsUnit.Point, 0); + tbPersonnelCenterTabs.Location = new Point(2, 37); + tbPersonnelCenterTabs.Name = "tbPersonnelCenterTabs"; + tbPersonnelCenterTabs.Pages.Add(tpPersonnelInfo); + tbPersonnelCenterTabs.Pages.Add(tpAccountSecurity); + tbPersonnelCenterTabs.Pages.Add(tpAccountAvatar); + tbPersonnelCenterTabs.Size = new Size(637, 421); + tbPersonnelCenterTabs.Style = styleCard1; + tbPersonnelCenterTabs.TabIndex = 18; + tbPersonnelCenterTabs.Type = AntdUI.TabType.Card; + tbPersonnelCenterTabs.TabClick += tbPersonnelCenterTabs_TabClick; + // + // tbPersonnelInfo + // + tbPersonnelInfo.Controls.Add(pnlPage); + tbPersonnelInfo.Location = new Point(3, 27); + tbPersonnelInfo.Name = "tbPersonnelInfo"; + tbPersonnelInfo.Size = new Size(631, 391); + tbPersonnelInfo.TabIndex = 0; + tbPersonnelInfo.Text = "个人信息"; + // + // pnlPage + // + pnlPage.Location = new Point(3, 3); + pnlPage.Name = "pnlPage"; + pnlPage.Size = new Size(628, 388); + pnlPage.TabIndex = 0; + // + // tpPersonnelInfo + // + tpPersonnelInfo.Location = new Point(3, 27); + tpPersonnelInfo.Name = "tpPersonnelInfo"; + tpPersonnelInfo.Size = new Size(631, 391); + tpPersonnelInfo.TabIndex = 3; + tpPersonnelInfo.Text = "个人信息"; + // + // tpAccountSecurity + // + tpAccountSecurity.Location = new Point(0, 0); + tpAccountSecurity.Name = "tpAccountSecurity"; + tpAccountSecurity.Size = new Size(0, 0); + tpAccountSecurity.TabIndex = 1; + tpAccountSecurity.Text = "账号安全"; + // + // tpAccountAvatar + // + tpAccountAvatar.Location = new Point(0, 0); + tpAccountAvatar.Name = "tpAccountAvatar"; + tpAccountAvatar.Size = new Size(0, 0); + tpAccountAvatar.TabIndex = 2; + tpAccountAvatar.Text = "账号头像"; // // FrmMySpace // AutoScaleMode = AutoScaleMode.None; - ClientSize = new Size(937, 589); - Controls.Add(uiTabControlMenu2); + BackColor = Color.FromArgb(235, 243, 255); + ClientSize = new Size(641, 461); + Controls.Add(tbPersonnelCenterTabs); + Controls.Add(ucWindowHeader1); Icon = (Icon)resources.GetObject("$this.Icon"); MaximizeBox = false; MinimizeBox = false; Name = "FrmMySpace"; - ShowTitleIcon = true; Text = "个人中心"; - ZoomScaleRect = new Rectangle(15, 15, 873, 587); Load += FrmMySpace_Load; - uiTabControlMenu2.ResumeLayout(false); - tabPage1.ResumeLayout(false); - tabPage1.PerformLayout(); - tabPage2.ResumeLayout(false); - tabPage3.ResumeLayout(false); - ((System.ComponentModel.ISupportInitialize)picWorkerPic).EndInit(); + tbPersonnelCenterTabs.ResumeLayout(false); + tbPersonnelInfo.ResumeLayout(false); ResumeLayout(false); } #endregion - private Sunny.UI.UIComboBox cbWorkerNation; - private System.Windows.Forms.Label label1; - private Sunny.UI.UIComboBox cboWorkerClub; - private Sunny.UI.UIComboBox cboWorkerPosition; - private Sunny.UI.UIComboBox cboSex; - private Sunny.UI.UITextBox txtWorkerNo; - private Sunny.UI.UITextBox txtWorkerName; - private Sunny.UI.UITextBox txtTel; - private Sunny.UI.UITextBox txtAddress; - private System.Windows.Forms.Label label2; - private System.Windows.Forms.Label label5; - private System.Windows.Forms.Label label16; - private System.Windows.Forms.Label label30; - private System.Windows.Forms.Label label31; - private System.Windows.Forms.Label label32; - private Sunny.UI.UIButton btnUpdWorker; - private System.Windows.Forms.Label label7; - private System.Windows.Forms.OpenFileDialog openPic; - private Sunny.UI.UITabControlMenu uiTabControlMenu2; - private System.Windows.Forms.TabPage tabPage1; - private System.Windows.Forms.TabPage tabPage2; - private System.Windows.Forms.TabPage tabPage3; - private System.Windows.Forms.PictureBox picWorkerPic; - private AntdUI.Label label4; - private AntdUI.Label lblEmployeeId; - private AntdUI.Avatar avatar2; - private AntdUI.Avatar avatar1; - private AntdUI.Button btnUpdatePassword; - private AntdUI.Input txtNewPassword; - private AntdUI.Avatar avatar3; - private AntdUI.Input txtOldPassword; + private ucWindowHeader ucWindowHeader1; + private AntdUI.Tabs tbPersonnelCenterTabs; + private AntdUI.TabPage tpAccountSecurity; + private AntdUI.TabPage tpAccountAvatar; + private AntdUI.TabPage tbPersonnelInfo; + private Panel pnlPage; + private AntdUI.TabPage tpPersonnelInfo; } } \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.cs index 293ea2e..cb230a5 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.cs @@ -23,289 +23,56 @@ */ using AntdUI; -using EOM.TSHotelManagement.Common; -using EOM.TSHotelManagement.Common.Contract; -using EOM.TSHotelManagement.Common.Util; -using jvncorelib.EncryptorLib; -using jvncorelib.EntityLib; -using Sunny.UI; -using System.ComponentModel; namespace EOM.TSHotelManagement.FormUI { - public partial class FrmMySpace : UIForm + public partial class FrmMySpace : Window { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmMySpace)); public FrmMySpace() { InitializeComponent(); - } - - EncryptLib encryptLib = new EncryptLib(); - private void FrmMySpace_Load(object sender, EventArgs e) - { - //加载民族信息 - Dictionary dic = new Dictionary - { - { nameof(ReadNationInputDto.IsDelete), "0" }, - { nameof(ReadNationInputDto.IgnorePaging), "true" } - }; - var result = HttpHelper.Request(ApiConstants.Base_SelectNationAll, dic); - var nations = HttpHelper.JsonToModel>(result.message); - if (nations.Code != BusinessStatusCode.Success) - { - UIMessageBox.ShowError($"{ApiConstants.Base_SelectNationAll}+接口服务异常,请提交Issue或尝试更新版本!"); - return; - } - cbWorkerNation.DataSource = nations.Data.Items; - cbWorkerNation.DisplayMember = nameof(ReadNationOutputDto.NationName); - cbWorkerNation.ValueMember = nameof(ReadNationOutputDto.NationNumber); - //加载性别信息 - dic = new Dictionary - { - { nameof(ReadGenderTypeInputDto.IsDelete) , "0" }, - { nameof(ReadGenderTypeInputDto.IgnorePaging) , "true" } - }; - result = HttpHelper.Request(ApiConstants.Base_SelectGenderTypeAll, dic); - var genderTypes = HttpHelper.JsonToModel>(result.message); - if (genderTypes.Code != BusinessStatusCode.Success) - { - UIMessageBox.ShowError($"{ApiConstants.Base_SelectGenderTypeAll}+接口服务异常,请提交Issue或尝试更新版本!"); - return; - } - cboSex.DataSource = genderTypes.Data.Items; - cboSex.DisplayMember = nameof(ReadGenderTypeOutputDto.Description); - cboSex.ValueMember = nameof(ReadGenderTypeOutputDto.Id); - //加载部门信息 - result = HttpHelper.Request(ApiConstants.Base_SelectDeptAllCanUse); - var depts = HttpHelper.JsonToModel>(result.message); - if (depts.Code != BusinessStatusCode.Success) - { - UIMessageBox.ShowError($"{ApiConstants.Base_SelectDeptAllCanUse}+接口服务异常,请提交Issue或尝试更新版本!"); - return; - } - cboWorkerClub.DataSource = depts.Data.Items; - cboWorkerClub.DisplayMember = nameof(ReadDepartmentOutputDto.DepartmentName); - cboWorkerClub.ValueMember = nameof(ReadDepartmentOutputDto.DepartmentNumber); - //加载职位信息 - dic = new Dictionary - { - { nameof(ReadPositionInputDto.IsDelete), "0" }, - { nameof(ReadPositionInputDto.IgnorePaging), "true" } - }; - result = HttpHelper.Request(ApiConstants.Base_SelectPositionAll, dic); - var positions = HttpHelper.JsonToModel>(result.message); - if (positions.Code != BusinessStatusCode.Success) - { - UIMessageBox.ShowError($"{ApiConstants.Base_SelectPositionAll}+接口服务异常,请提交Issue或尝试更新版本!"); - return; - } - cboWorkerPosition.DataSource = positions.Data.Items; - cboWorkerPosition.DisplayMember = nameof(ReadPositionOutputDto.PositionName); - cboWorkerPosition.ValueMember = nameof(ReadPositionOutputDto.PositionNumber); - lblEmployeeId.Text = LoginInfo.WorkerNo; - txtOldPassword.PlaceholderText = LocalizationHelper.GetLocalizedString("Please input old password", "请输入旧密码"); - txtNewPassword.PlaceholderText = LocalizationHelper.GetLocalizedString("Please input new password", "请输入新密码"); - - LoadData(); + ucWindowHeader1 = new ucWindowHeader("个人中心", string.Empty, (Image)resources.GetObject("FrmMySpace.Icon")!); } - public void LoadData() - { - var dic = new Dictionary - { - { nameof(ReadEmployeeInputDto.EmployeeId) , LoginInfo.WorkerNo } - }; - var result = HttpHelper.Request(ApiConstants.Employee_SelectEmployeeInfoByEmployeeId, dic); - var employees = HttpHelper.JsonToModel>(result.message); - if (employees.Code != BusinessStatusCode.Success) - { - UIMessageBox.ShowError($"{ApiConstants.Employee_SelectEmployeeInfoByEmployeeId}+接口服务异常,请提交Issue或尝试更新版本!"); - return; - } - ReadEmployeeOutputDto worker = employees.Data; - if (!worker.IsNullOrEmpty()) - { - txtWorkerNo.Text = worker.EmployeeId; - txtWorkerName.Text = worker.EmployeeName; - cboSex.SelectedIndex = worker.Gender; - cboWorkerPosition.Text = worker.PositionName; - cboWorkerPosition.SelectedValue = worker.Position; - cboWorkerClub.Text = worker.DepartmentName; - cboWorkerClub.SelectedValue = worker.Department; - cbWorkerNation.Text = worker.EthnicityName; - cbWorkerNation.SelectedValue = worker.Ethnicity; - txtAddress.Text = worker.Address; - txtTel.Text = worker.PhoneNumber; - } - dic = new Dictionary - { - { nameof(ReadEmployeePhotoInputDto.EmployeeId) , LoginInfo.WorkerNo } - }; - result = HttpHelper.Request(ApiConstants.EmployeePhoto_EmployeePhoto, dic); - var workerPic = HttpHelper.JsonToModel>(result.message); - if (workerPic.Code != BusinessStatusCode.Success) - { - UIMessageBox.ShowError($"{ApiConstants.EmployeePhoto_EmployeePhoto}+接口服务异常,请提交Issue或尝试更新版本!"); - return; - } - var workerPicData = workerPic.Data; - if (workerPicData != null && !string.IsNullOrEmpty(workerPicData.PhotoPath)) - { - picWorkerPic.BackgroundImage = null; - if (!string.IsNullOrEmpty(workerPicData.PhotoPath)) picWorkerPic.Load(workerPicData.PhotoPath); - } - } - - public bool CheckInput(UpdateEmployeeInputDto worker) - { - if (string.IsNullOrWhiteSpace(worker.EmployeeId)) - { - return false; - } - if (string.IsNullOrWhiteSpace(worker.EmployeeName)) - { - return false; - } - if (string.IsNullOrWhiteSpace(worker.Gender + "")) - { - return false; - } - if (string.IsNullOrWhiteSpace(worker.Ethnicity)) - { - return false; - } - if (string.IsNullOrWhiteSpace(worker.PhoneNumber)) - { - return false; - } - if (string.IsNullOrWhiteSpace(worker.Address)) - { - return false; - } - return true; - } - ResponseMsg result = new ResponseMsg(); - private void btnUpdWorker_Click(object sender, EventArgs e) - { - UpdateEmployeeInputDto worker = new UpdateEmployeeInputDto() - { - EmployeeId = txtWorkerNo.Text.Trim(), - EmployeeName = txtWorkerName.Text.Trim(), - Gender = cboSex.Text == "男" ? 1 : 0, - Ethnicity = cbWorkerNation.SelectedValue.ToString(), - PhoneNumber = txtTel.Text.Trim(), - Address = txtAddress.Text.Trim(), - DataChgUsr = LoginInfo.WorkerNo, - DataChgDate = DateTime.Now - }; - - if (CheckInput(worker)) - { - result = HttpHelper.Request(ApiConstants.Employee_UpdateEmployee, HttpHelper.ModelToJson(worker)); - var response = HttpHelper.JsonToModel(result.message); - if (response.Code != BusinessStatusCode.Success) - { - UIMessageBox.ShowError($"{ApiConstants.Employee_UpdateEmployee}+接口服务异常,请提交Issue或尝试更新版本!"); - return; - } - UIMessageBox.Show("修改成功!", "系统提示", UIStyle.Green, UIMessageBoxButtons.OK); - #region 获取添加操作日志所需的信息 - RecordHelper.Record(LoginInfo.WorkerNo + "-" + LoginInfo.WorkerName + "在" + Convert.ToDateTime(DateTime.Now) + "位于" + LoginInfo.SoftwareVersion + "执行:" + "修改个人信息操作!", Common.Core.LogLevel.Warning); - #endregion - LoadData(); - return; - } - } - - private void cbWorkerNation_SelectedIndexChanged(object sender, EventArgs e) - { - } - - private void picWorkerPic_Click(object sender, EventArgs e) - { - openPic.ShowDialog(); - } - - private void openPic_FileOk(object sender, CancelEventArgs e) - { - var dic = new Dictionary - { - { nameof(ReadEmployeePhotoInputDto.EmployeeId) , LoginInfo.WorkerNo } - }; - result = HttpHelper.Request(ApiConstants.EmployeePhoto_EmployeePhoto, dic); - var workerPic = HttpHelper.JsonToModel>(result.message); - if (workerPic.Code != BusinessStatusCode.Success) - { - UIMessageBox.ShowError($"{ApiConstants.EmployeePhoto_EmployeePhoto}+接口服务异常,请提交Issue或尝试更新版本!"); - return; - } - var workerPicData = workerPic.Data; - if (!workerPicData.IsNullOrEmpty() && !string.IsNullOrEmpty(workerPicData.PhotoPath)) - { - result = HttpHelper.Request(ApiConstants.EmployeePhoto_DeleteWorkerPhoto, HttpHelper.ModelToJson(workerPic)); - var response = HttpHelper.JsonToModel(result.message); - if (response.Code != BusinessStatusCode.Success) - { - UIMessageBox.ShowError($"{ApiConstants.EmployeePhoto_DeleteWorkerPhoto}+接口服务异常,请提交Issue或尝试更新版本!"); - return; - } - PicHandler(); - } - else - { - PicHandler(); - } - - } - - public void PicHandler() + private void FrmMySpace_Load(object sender, EventArgs e) { - Dictionary additionalParams = new Dictionary - { - { nameof(CreateEmployeePhotoInputDto.EmployeeId), txtWorkerNo.Text.Trim() } - }; - var workerPic = new CreateEmployeePhotoInputDto - { - EmployeeId = txtWorkerNo.Text.Trim(), - PhotoUrl = null, - }; - var requestResult = HttpHelper.UploadFile(ApiConstants.EmployeePhoto_InsertWorkerPhoto, openPic.FileName, additionalParams); - var response = HttpHelper.JsonToModel>(requestResult.message); - if (response.Code != BusinessStatusCode.Success) - { - UIMessageBox.ShowError($"{response.Message}:{ApiConstants.EmployeePhoto_InsertWorkerPhoto}+接口服务异常,请提交Issue或尝试更新版本!"); - return; - } - UIMessageTip.ShowOk("头像上传成功!稍等将会加载头像哦.."); - picWorkerPic.Load(response.Data.PhotoPath); } - private void btnUpdatePassword_Click(object sender, EventArgs e) + private void tbPersonnelCenterTabs_TabClick(object sender, TabsItemEventArgs e) { - if (string.IsNullOrEmpty(txtOldPassword.Text) || string.IsNullOrEmpty(txtNewPassword.Text)) - { - AntdUI.Modal.open(this, LocalizationHelper.GetLocalizedString("System prompt", "系统提示"), LocalizationHelper.GetLocalizedString("Please input new password or old password", "请输入旧密码或新密码"), TType.Error); - return; - } - - var request = HttpHelper.Request(ApiConstants.Employee_UpdateEmployeeAccountPassword, HttpHelper.ModelToJson(new UpdateEmployeeInputDto - { - EmployeeId = LoginInfo.WorkerNo, - OldPassword = txtOldPassword.Text.Trim(), - Password = txtNewPassword.Text.Trim(), - DataChgDate = DateTime.Now, - DataChgUsr = LoginInfo.WorkerNo - })); - var response = HttpHelper.JsonToModel(request.message); - if (response.Code != BusinessStatusCode.Success) - { - AntdUI.Modal.open(this, LocalizationHelper.GetLocalizedString("System prompt", "系统提示"), LocalizationHelper.GetLocalizedString($"{ApiConstants.Employee_UpdateEmployeeAccountPassword}+Interface service exception, please submit an issue or try updating the version!", $"{ApiConstants.Employee_UpdateEmployeeAccountPassword}+接口服务异常,请提交Issue或尝试更新版本!")); - return; + switch (e.Item.Name) + { + case "tbPersonnelInfo": + pnlPage.Controls.Clear(); + FrmPersonnelInfo frmPersonnelInfo = new() + { + TopLevel = false + }; + pnlPage.Controls.Add(frmPersonnelInfo); + frmPersonnelInfo.Show(); + break; + case "tbChangePassword": + pnlPage.Controls.Clear(); + FrmAccountSecurity frmAccountSecurity = new() + { + TopLevel = false + }; + pnlPage.Controls.Add(frmAccountSecurity); + frmAccountSecurity.Show(); + break; + case "tbAccountAvatar": + pnlPage.Controls.Clear(); + FrmAvator frmAvator = new() + { + TopLevel = false + }; + pnlPage.Controls.Add(frmAvator); + frmAvator.Show(); + break; } - AntdUI.Modal.open(this, LocalizationHelper.GetLocalizedString("System prompt", "系统提示"), LocalizationHelper.GetLocalizedString("Update password success", "更新密码成功"), TType.Success); - return; } } } diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.resx index 962430f..18ddd3d 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.resx +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.resx @@ -117,46 +117,7 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 17, 17 - - - - iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAATBJREFUWEfl - l8ENgzAMRVkAxAgdpaMwRFP12E0YpaNwzBitHIXWNSY/wUGo6pN8QHYcYyc2NM0v0t/8qbv6exDnx9b5 - ob/4s7SrDm3cOv/onH+uyEQ2cl0V6C2VDTWZKDNyvQlKL9+EsjCnPGZliOX4ZKJmSb7Snng7GYTUb0Kk - fpR6CdmwTA1SXwx3KHUa4YawUkl9MeFQFaaUlSx7zSol6Z/hZ0bqitkSQGnZkvxnALzPswDoMNJzjswH - NwROknUlY8fji2tLelaAQVNL9KtZvYEw5BRV5wRvuVn1KoT7PzwA1T80MAL9QwMj0D80MAL9QwMj0D80 - MAL9QwMj0D80MAL98y9f1cAIDkC04uTQKGTRijXf0mgvSc6ZmIV9x7E2BzjvP53lR4ZNEj80h/ICfjHx - PxFMstQAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAATBJREFUWEfl - l8ENgzAMRVkAxAgdpaMwRFP12E0YpaNwzBitHIXWNSY/wUGo6pN8QHYcYyc2NM0v0t/8qbv6exDnx9b5 - ob/4s7SrDm3cOv/onH+uyEQ2cl0V6C2VDTWZKDNyvQlKL9+EsjCnPGZliOX4ZKJmSb7Snng7GYTUb0Kk - fpR6CdmwTA1SXwx3KHUa4YawUkl9MeFQFaaUlSx7zSol6Z/hZ0bqitkSQGnZkvxnALzPswDoMNJzjswH - NwROknUlY8fji2tLelaAQVNL9KtZvYEw5BRV5wRvuVn1KoT7PzwA1T80MAL9QwMj0D80MAL9QwMj0D80 - MAL9QwMj0D80MAL98y9f1cAIDkC04uTQKGTRijXf0mgvSc6ZmIV9x7E2BzjvP53lR4ZNEj80h/ICfjHx - PxFMstQAAAAASUVORK5CYII= - - - - - iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAg1JREFUWEe1 - VrtKA0EUTZmkERStxEfhT1iIra3+QFo7s4pEURL9AUEQQfDR2wkWVkkhCDZ2WlikESbZoAmILyKM3GVn - c/eYye7sbA6cIpuZ+753biZjgeyamMFvQwUpzDuikiuKas4R0medfucdcT5UgzzFPaU61ukc3rUGeCxH - S43W0nG7tnLWeVg4fHue23fraAjKSAyufGSzIY5uv8X9i5TIvZtPObHdbKuzqUQiuyEWlcDpsvuESpFX - j79ycrf5paJA91GmEXhYSTgq7MeTu59eKoqiijJjgypaCdq5/mihokGcP3i1r4WsIwqm3iuuXr4HUUic - BuprJQQVRJGnwcaAoO9NI0AdERjgiALKjgXeAeQRKhnEUAqSTkdehMunnX9KBpEVoUS5RvDmvCPkVNnt - xo0C957qCGUagadhtuJG1kJoBth6r8C7gYwgD1ExGcY9JyaufoRXC/AYEcdKDTm+1Qh9U0zlHeDwC7KG - ivqwm18XF3jfCjH3AKT9XqAJvdp+KpRjOkODps+W5DGxEXwGmAgLVjYwGs9FAnc+04r22zfYkozmQUi5 - xXvuRzEwItabwAePdynpHPcB8qJTwb03DbsOvCYi6yiN0CMgFfoo8A0oVr4MECuyfObb5h7B06B1jluJ - /9mCF6O2DoI8pZh/BT7YtDNBRUB7wBLKQa18NUbTzr+Cko/f/wBMTh9auuIjhwAAAABJRU5ErkJggg== - - AAABAAEAICAAAAEAGACFAwAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAgAAAAIAgGAAAAc3p69AAAAAFz diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.Designer.cs new file mode 100644 index 0000000..3f5a3cb --- /dev/null +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.Designer.cs @@ -0,0 +1,268 @@ +namespace EOM.TSHotelManagement.FormUI +{ + partial class FrmPersonnelInfo + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + label7 = new Label(); + label5 = new Label(); + label32 = new Label(); + label31 = new Label(); + label30 = new Label(); + label1 = new Label(); + label2 = new Label(); + label16 = new Label(); + txtEmployeeId = new AntdUI.Input(); + txtEmployeeName = new AntdUI.Input(); + txtEmployeeAddress = new AntdUI.Input(); + txtEmployeeTel = new AntdUI.Input(); + cboGender = new AntdUI.Dropdown(); + cboEmployeeDepartment = new AntdUI.Dropdown(); + cboEmployeePosition = new AntdUI.Dropdown(); + cboEmployeeNation = new AntdUI.Dropdown(); + btnUpdate = new AntdUI.Button(); + SuspendLayout(); + // + // label7 + // + label7.AutoSize = true; + label7.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); + label7.Location = new Point(12, 171); + label7.Name = "label7"; + label7.Size = new Size(88, 25); + label7.TabIndex = 148; + label7.Text = "联系方式"; + // + // label5 + // + label5.AutoSize = true; + label5.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); + label5.Location = new Point(323, 69); + label5.Name = "label5"; + label5.Size = new Size(88, 25); + label5.TabIndex = 136; + label5.Text = "现任职位"; + // + // label32 + // + label32.AutoSize = true; + label32.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); + label32.Location = new Point(12, 18); + label32.Name = "label32"; + label32.Size = new Size(88, 25); + label32.TabIndex = 132; + label32.Text = "员工编号"; + // + // label31 + // + label31.AutoSize = true; + label31.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); + label31.Location = new Point(12, 69); + label31.Name = "label31"; + label31.Size = new Size(88, 25); + label31.TabIndex = 133; + label31.Text = "员工姓名"; + // + // label30 + // + label30.AutoSize = true; + label30.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); + label30.Location = new Point(12, 119); + label30.Name = "label30"; + label30.Size = new Size(86, 25); + label30.TabIndex = 134; + label30.Text = "性 别"; + // + // label1 + // + label1.AutoSize = true; + label1.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); + label1.Location = new Point(323, 119); + label1.Name = "label1"; + label1.Size = new Size(86, 25); + label1.TabIndex = 145; + label1.Text = "民 族"; + // + // label2 + // + label2.AutoSize = true; + label2.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); + label2.Location = new Point(12, 221); + label2.Name = "label2"; + label2.Size = new Size(88, 25); + label2.TabIndex = 137; + label2.Text = "居住地址"; + // + // label16 + // + label16.AutoSize = true; + label16.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); + label16.Location = new Point(323, 18); + label16.Name = "label16"; + label16.Size = new Size(88, 25); + label16.TabIndex = 135; + label16.Text = "所在部门"; + // + // txtEmployeeId + // + txtEmployeeId.Font = new Font("Noto Sans SC", 12F); + txtEmployeeId.Location = new Point(109, 8); + txtEmployeeId.Name = "txtEmployeeId"; + txtEmployeeId.ReadOnly = true; + txtEmployeeId.Size = new Size(205, 45); + txtEmployeeId.TabIndex = 149; + // + // txtEmployeeName + // + txtEmployeeName.Font = new Font("Noto Sans SC", 12F); + txtEmployeeName.Location = new Point(109, 59); + txtEmployeeName.Name = "txtEmployeeName"; + txtEmployeeName.Size = new Size(205, 45); + txtEmployeeName.TabIndex = 150; + // + // txtEmployeeAddress + // + txtEmployeeAddress.Font = new Font("Noto Sans SC", 12F); + txtEmployeeAddress.Location = new Point(109, 208); + txtEmployeeAddress.Name = "txtEmployeeAddress"; + txtEmployeeAddress.Size = new Size(515, 45); + txtEmployeeAddress.TabIndex = 151; + // + // txtEmployeeTel + // + txtEmployeeTel.Font = new Font("Noto Sans SC", 12F); + txtEmployeeTel.Location = new Point(110, 159); + txtEmployeeTel.Name = "txtEmployeeTel"; + txtEmployeeTel.Size = new Size(515, 45); + txtEmployeeTel.TabIndex = 152; + // + // cboGender + // + cboGender.DropDownArrow = true; + cboGender.Font = new Font("Noto Sans SC", 12F); + cboGender.Location = new Point(109, 112); + cboGender.Name = "cboGender"; + cboGender.Placement = AntdUI.TAlignFrom.Bottom; + cboGender.Size = new Size(204, 40); + cboGender.TabIndex = 153; + cboGender.ToggleType = AntdUI.TTypeMini.Info; + // + // cboEmployeeDepartment + // + cboEmployeeDepartment.DropDownArrow = true; + cboEmployeeDepartment.Font = new Font("Noto Sans SC", 12F); + cboEmployeeDepartment.Location = new Point(421, 13); + cboEmployeeDepartment.Name = "cboEmployeeDepartment"; + cboEmployeeDepartment.Placement = AntdUI.TAlignFrom.Bottom; + cboEmployeeDepartment.Size = new Size(204, 40); + cboEmployeeDepartment.TabIndex = 154; + cboEmployeeDepartment.ToggleType = AntdUI.TTypeMini.Info; + // + // cboEmployeePosition + // + cboEmployeePosition.DropDownArrow = true; + cboEmployeePosition.Font = new Font("Noto Sans SC", 12F); + cboEmployeePosition.Location = new Point(421, 64); + cboEmployeePosition.Name = "cboEmployeePosition"; + cboEmployeePosition.Placement = AntdUI.TAlignFrom.Bottom; + cboEmployeePosition.Size = new Size(204, 40); + cboEmployeePosition.TabIndex = 155; + cboEmployeePosition.ToggleType = AntdUI.TTypeMini.Info; + // + // cboEmployeeNation + // + cboEmployeeNation.DropDownArrow = true; + cboEmployeeNation.Font = new Font("Noto Sans SC", 12F); + cboEmployeeNation.Location = new Point(421, 112); + cboEmployeeNation.Name = "cboEmployeeNation"; + cboEmployeeNation.Placement = AntdUI.TAlignFrom.Bottom; + cboEmployeeNation.Size = new Size(204, 40); + cboEmployeeNation.TabIndex = 156; + cboEmployeeNation.ToggleType = AntdUI.TTypeMini.Info; + // + // btnUpdate + // + btnUpdate.Font = new Font("Noto Sans SC", 12F); + btnUpdate.Location = new Point(538, 258); + btnUpdate.Name = "btnUpdate"; + btnUpdate.Size = new Size(87, 43); + btnUpdate.TabIndex = 157; + btnUpdate.Text = "修 改"; + btnUpdate.Type = AntdUI.TTypeMini.Info; + btnUpdate.Click += btnUpdate_Click; + // + // FrmPersonnelInfo + // + AutoScaleDimensions = new SizeF(7F, 17F); + AutoScaleMode = AutoScaleMode.Font; + BackColor = Color.FromArgb(235, 243, 255); + ClientSize = new Size(637, 312); + Controls.Add(btnUpdate); + Controls.Add(cboEmployeeNation); + Controls.Add(cboEmployeePosition); + Controls.Add(cboEmployeeDepartment); + Controls.Add(cboGender); + Controls.Add(txtEmployeeTel); + Controls.Add(txtEmployeeAddress); + Controls.Add(txtEmployeeName); + Controls.Add(txtEmployeeId); + Controls.Add(label7); + Controls.Add(label5); + Controls.Add(label32); + Controls.Add(label31); + Controls.Add(label30); + Controls.Add(label1); + Controls.Add(label2); + Controls.Add(label16); + Name = "FrmPersonnelInfo"; + Text = "FrmPersonnelInfo"; + Load += FrmPersonnelInfo_Load; + ResumeLayout(false); + PerformLayout(); + } + + #endregion + + private Label label7; + private Label label5; + private Label label32; + private Label label31; + private Label label30; + private Label label1; + private Label label2; + private Label label16; + private AntdUI.Input txtEmployeeId; + private AntdUI.Input txtEmployeeName; + private AntdUI.Input txtEmployeeAddress; + private AntdUI.Input txtEmployeeTel; + private AntdUI.Dropdown cboGender; + private AntdUI.Dropdown cboEmployeeDepartment; + private AntdUI.Dropdown cboEmployeePosition; + private AntdUI.Dropdown cboEmployeeNation; + private AntdUI.Button btnUpdate; + } +} \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.cs new file mode 100644 index 0000000..3ed4d08 --- /dev/null +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.cs @@ -0,0 +1,194 @@ +using AntdUI; +using EOM.TSHotelManagement.Common; +using EOM.TSHotelManagement.Common.Contract; +using jvncorelib.EntityLib; +using Sunny.UI; +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; +using static System.Windows.Forms.VisualStyles.VisualStyleElement.ToolTip; + +namespace EOM.TSHotelManagement.FormUI +{ + public partial class FrmPersonnelInfo : Window + { + public FrmPersonnelInfo() + { + InitializeComponent(); + } + + private void FrmPersonnelInfo_Load(object sender, EventArgs e) + { + + //加载民族信息 + Dictionary dic = new Dictionary + { + { nameof(ReadNationInputDto.IsDelete), "0" }, + { nameof(ReadNationInputDto.IgnorePaging), "true" } + }; + var result = HttpHelper.Request(ApiConstants.Base_SelectNationAll, dic); + var nations = HttpHelper.JsonToModel>(result.message); + if (nations.Code != BusinessStatusCode.Success) + { + UIMessageBox.ShowError($"{ApiConstants.Base_SelectNationAll}+接口服务异常,请提交Issue或尝试更新版本!"); + return; + } + cboEmployeeNation.Items.AddRange(nations.Data.Items.Select(item=> new AntdUI.SelectItem(item.NationName,item.NationNumber)).ToArray()); + //加载性别信息 + dic = new Dictionary + { + { nameof(ReadGenderTypeInputDto.IsDelete) , "0" }, + { nameof(ReadGenderTypeInputDto.IgnorePaging) , "true" } + }; + result = HttpHelper.Request(ApiConstants.Base_SelectGenderTypeAll, dic); + var genderTypes = HttpHelper.JsonToModel>(result.message); + if (genderTypes.Code != BusinessStatusCode.Success) + { + UIMessageBox.ShowError($"{ApiConstants.Base_SelectGenderTypeAll}+接口服务异常,请提交Issue或尝试更新版本!"); + return; + } + cboGender.Items.AddRange(genderTypes.Data.Items.Select(item => new AntdUI.SelectItem(item.Description, item.Id)).ToArray()); + //加载部门信息 + result = HttpHelper.Request(ApiConstants.Base_SelectDeptAllCanUse); + var depts = HttpHelper.JsonToModel>(result.message); + if (depts.Code != BusinessStatusCode.Success) + { + UIMessageBox.ShowError($"{ApiConstants.Base_SelectDeptAllCanUse}+接口服务异常,请提交Issue或尝试更新版本!"); + return; + } + cboEmployeeDepartment.Items.AddRange(depts.Data.Items.Select(item => new AntdUI.SelectItem(item.DepartmentName, item.DepartmentNumber)).ToArray()); + //加载职位信息 + dic = new Dictionary + { + { nameof(ReadPositionInputDto.IsDelete), "0" }, + { nameof(ReadPositionInputDto.IgnorePaging), "true" } + }; + result = HttpHelper.Request(ApiConstants.Base_SelectPositionAll, dic); + var positions = HttpHelper.JsonToModel>(result.message); + if (positions.Code != BusinessStatusCode.Success) + { + UIMessageBox.ShowError($"{ApiConstants.Base_SelectPositionAll}+接口服务异常,请提交Issue或尝试更新版本!"); + return; + } + cboEmployeePosition.Items.AddRange(positions.Data.Items.Select(item => new AntdUI.SelectItem(item.PositionName, item.PositionNumber)).ToArray()); + + LoadPersonnelInfo(); + } + + private void LoadPersonnelInfo() + { + var dic = new Dictionary + { + { nameof(ReadEmployeeInputDto.EmployeeId) , LoginInfo.WorkerNo } + }; + var result = HttpHelper.Request(ApiConstants.Employee_SelectEmployeeInfoByEmployeeId, dic); + var employees = HttpHelper.JsonToModel>(result.message); + if (employees.Code != BusinessStatusCode.Success) + { + UIMessageBox.ShowError($"{ApiConstants.Employee_SelectEmployeeInfoByEmployeeId}+接口服务异常,请提交Issue或尝试更新版本!"); + return; + } + ReadEmployeeOutputDto worker = employees.Data; + if (!worker.IsNullOrEmpty()) + { + txtEmployeeId.Text = worker.EmployeeId; + txtEmployeeName.Text = worker.EmployeeName; + cboGender.SelectedValue = worker.Gender; + cboEmployeePosition.Text = worker.PositionName; + cboEmployeePosition.SelectedValue = worker.Position; + cboEmployeeDepartment.Text = worker.DepartmentName; + cboEmployeeDepartment.SelectedValue = worker.Department; + cboEmployeeNation.Text = worker.EthnicityName; + cboEmployeeNation.SelectedValue = worker.Ethnicity; + txtEmployeeAddress.Text = worker.Address; + txtEmployeeTel.Text = worker.PhoneNumber; + } + //dic = new Dictionary + //{ + // { nameof(ReadEmployeePhotoInputDto.EmployeeId) , LoginInfo.WorkerNo } + //}; + //result = HttpHelper.Request(ApiConstants.EmployeePhoto_EmployeePhoto, dic); + //var workerPic = HttpHelper.JsonToModel>(result.message); + //if (workerPic.Code != BusinessStatusCode.Success) + //{ + // UIMessageBox.ShowError($"{ApiConstants.EmployeePhoto_EmployeePhoto}+接口服务异常,请提交Issue或尝试更新版本!"); + // return; + //} + //var workerPicData = workerPic.Data; + //if (workerPicData != null && !string.IsNullOrEmpty(workerPicData.PhotoPath)) + //{ + // picWorkerPic.BackgroundImage = null; + // if (!string.IsNullOrEmpty(workerPicData.PhotoPath)) picWorkerPic.Load(workerPicData.PhotoPath); + //} + Refresh(); + } + + public bool CheckInput(UpdateEmployeeInputDto worker) + { + if (string.IsNullOrWhiteSpace(worker.EmployeeId)) + { + return false; + } + if (string.IsNullOrWhiteSpace(worker.EmployeeName)) + { + return false; + } + if (string.IsNullOrWhiteSpace(worker.Gender + "")) + { + return false; + } + if (string.IsNullOrWhiteSpace(worker.Ethnicity)) + { + return false; + } + if (string.IsNullOrWhiteSpace(worker.PhoneNumber)) + { + return false; + } + if (string.IsNullOrWhiteSpace(worker.Address)) + { + return false; + } + return true; + } + + ResponseMsg result = new ResponseMsg(); + private void btnUpdate_Click(object sender, EventArgs e) + { + UpdateEmployeeInputDto worker = new UpdateEmployeeInputDto() + { + EmployeeId = txtEmployeeId.Text.Trim(), + EmployeeName = txtEmployeeName.Text.Trim(), + Gender = cboGender.Text == "男" ? 1 : 0, + Ethnicity = cboEmployeeNation.SelectedValue.ToString(), + PhoneNumber = txtEmployeeTel.Text.Trim(), + Address = txtEmployeeAddress.Text.Trim(), + DataChgUsr = LoginInfo.WorkerNo, + DataChgDate = DateTime.Now + }; + + if (CheckInput(worker)) + { + result = HttpHelper.Request(ApiConstants.Employee_UpdateEmployee, worker.ModelToJson()); + var response = HttpHelper.JsonToModel(result.message); + if (response.Code != BusinessStatusCode.Success) + { + UIMessageBox.ShowError($"{ApiConstants.Employee_UpdateEmployee}+接口服务异常,请提交Issue或尝试更新版本!"); + return; + } + UIMessageBox.Show("修改成功!", "系统提示", UIStyle.Green, UIMessageBoxButtons.OK); + #region 获取添加操作日志所需的信息 + RecordHelper.Record(LoginInfo.WorkerNo + "-" + LoginInfo.WorkerName + "在" + Convert.ToDateTime(DateTime.Now) + "位于" + LoginInfo.SoftwareVersion + "执行:" + "修改个人信息操作!", Common.Core.LogLevel.Warning); + #endregion + LoadPersonnelInfo(); + return; + } + } + } +} diff --git a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucNavBar.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.resx similarity index 99% rename from EOM.TSHotelManagement.FormUI/ClientCustomControls/ucNavBar.resx rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.resx index af32865..8b2ff64 100644 --- a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucNavBar.resx +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.resx @@ -1,7 +1,7 @@  diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.Designer.cs index 651b8fd..7b8613c 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.Designer.cs @@ -50,6 +50,7 @@ btnAdd = new AntdUI.Button(); btnCancel = new AntdUI.Button(); dgvRoomSell = new AntdUI.Table(); + ucWindowHeader1 = new ucWindowHeader(); groupBox2.SuspendLayout(); SuspendLayout(); // @@ -272,6 +273,7 @@ dgvSellthing.AutoSizeColumnsMode = AntdUI.ColumnsMode.Fill; dgvSellthing.Bordered = true; dgvSellthing.Font = new Font("Microsoft YaHei UI", 9F); + dgvSellthing.Gap = 12; dgvSellthing.Location = new Point(4, 88); dgvSellthing.Name = "dgvSellthing"; dgvSellthing.Size = new Size(487, 351); @@ -317,17 +319,26 @@ dgvRoomSell.AutoSizeColumnsMode = AntdUI.ColumnsMode.Fill; dgvRoomSell.Bordered = true; dgvRoomSell.Font = new Font("Microsoft YaHei UI", 9F); + dgvRoomSell.Gap = 12; dgvRoomSell.Location = new Point(497, 217); dgvRoomSell.Name = "dgvRoomSell"; dgvRoomSell.Size = new Size(572, 262); dgvRoomSell.TabIndex = 138; dgvRoomSell.CellClick += dgvRoomSell_CellClick; // + // ucWindowHeader1 + // + ucWindowHeader1.Location = new Point(1, 1); + ucWindowHeader1.Name = "ucWindowHeader1"; + ucWindowHeader1.Size = new Size(1071, 35); + ucWindowHeader1.TabIndex = 139; + // // FrmSellThing // AutoScaleMode = AutoScaleMode.None; BackColor = Color.FromArgb(235, 243, 255); ClientSize = new Size(1072, 486); + Controls.Add(ucWindowHeader1); Controls.Add(dgvRoomSell); Controls.Add(btnCancel); Controls.Add(btnAdd); @@ -342,14 +353,10 @@ Controls.Add(label1); Controls.Add(groupBox2); Icon = (Icon)resources.GetObject("$this.Icon"); - IsForbidAltF4 = true; MaximizeBox = false; MinimizeBox = false; Name = "FrmSellThing"; - ShowTitleIcon = true; - Style = Sunny.UI.UIStyle.Custom; Text = "商品消费"; - ZoomScaleRect = new Rectangle(15, 15, 1072, 490); Load += FrmSellThing_Load; groupBox2.ResumeLayout(false); ResumeLayout(false); @@ -402,5 +409,6 @@ private AntdUI.Button btnAdd; private AntdUI.Button btnCancel; private AntdUI.Table dgvRoomSell; + private ucWindowHeader ucWindowHeader1; } } \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.cs index bc52d16..87fa903 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.cs @@ -22,17 +22,18 @@ * */ +using AntdUI; using EOM.TSHotelManagement.Common; using EOM.TSHotelManagement.Common.Contract; using EOM.TSHotelManagement.Common.Core; +using EOM.TSHotelManagement.Common.Util; using EOM.TSHotelManagement.Shared; using jvncorelib.EntityLib; -using Sunny.UI; using System.Transactions; namespace EOM.TSHotelManagement.FormUI { - public partial class FrmSellThing : Sunny.UI.UIForm + public partial class FrmSellThing : Window { static string roomNo; @@ -78,7 +79,7 @@ namespace EOM.TSHotelManagement.FormUI var response = HttpHelper.JsonToModel>(result.message); if (response.Code != BusinessStatusCode.Success) { - UIMessageBox.ShowError($"{ApiConstants.Sellthing_SelectSellThingAll}+接口服务异常,请提交Issue或尝试更新版本!"); + AntdUI.Modal.open(this, UIMessageConstant.Error, $"{ApiConstants.Sellthing_SelectSellThingAll}+接口服务异常,请提交Issue或尝试更新版本!"); return; } @@ -113,7 +114,7 @@ namespace EOM.TSHotelManagement.FormUI var response = HttpHelper.JsonToModel>(result.message); if (response.Code != BusinessStatusCode.Success) { - UIMessageBox.ShowError($"{ApiConstants.Spend_SelectSpendByRoomNo}+接口服务异常,请提交Issue或尝试更新版本!"); + AntdUI.Modal.open(this, UIMessageConstant.Error, $"{ApiConstants.Spend_SelectSpendByRoomNo}+接口服务异常,请提交Issue或尝试更新版本!"); return; } List lstData = response.Data.Items; @@ -176,31 +177,31 @@ namespace EOM.TSHotelManagement.FormUI { if (string.IsNullOrEmpty(txtRoomNo.Text)) { - UIMessageBox.Show("消费房间不能为空", "提示信息", UIStyle.Red, UIMessageBoxButtons.OKCancel); + AntdUI.Modal.open(this, UIMessageConstant.Warning, "消费房间不能为空"); txtRoomNo.Focus(); return false; } if (string.IsNullOrEmpty(txtSellNo.Text)) { - UIMessageBox.Show("商品编号不能为空", "提示信息", UIStyle.Red, UIMessageBoxButtons.OKCancel); + AntdUI.Modal.open(this, UIMessageConstant.Warning, "商品编号不能为空"); txtSellNo.Focus(); return false; } if (string.IsNullOrEmpty(txtSellName.Text)) { - UIMessageBox.Show("商品名称不能为空", "提示信息", UIStyle.Red, UIMessageBoxButtons.OKCancel); + AntdUI.Modal.open(this, UIMessageConstant.Warning, "商品名称不能为空"); txtSellName.Focus(); return false; } if (string.IsNullOrEmpty(txtPrice.Text)) { - UIMessageBox.Show("商品单价不能为空", "提示信息", UIStyle.Red, UIMessageBoxButtons.OKCancel); + AntdUI.Modal.open(this, UIMessageConstant.Warning, "商品单价不能为空"); txtPrice.Focus(); return false; } if (nudNum.Value <= 0) { - UIMessageBox.Show("数量不能小于或等于0", "提示信息", UIStyle.Red, UIMessageBoxButtons.OKCancel); + AntdUI.Modal.open(this, UIMessageConstant.Warning, "数量不能小于或等于0"); txtPrice.Focus(); return false; } @@ -217,12 +218,12 @@ namespace EOM.TSHotelManagement.FormUI { if (lblState.Visible == false) { - UIMessageBox.Show("请先输入消费的房间!", "提示信息", UIStyle.Red); + AntdUI.Modal.open(this, UIMessageConstant.Warning, "请先输入消费的房间!"); return; } if (nudNum.Value <= 0) { - UIMessageBox.Show("请输入消费数量!", "提示信息", UIStyle.Red); + AntdUI.Modal.open(this, UIMessageConstant.Warning, "请输入消费数量!"); return; } if (lblState.Text == "该房间可消费") @@ -231,7 +232,7 @@ namespace EOM.TSHotelManagement.FormUI try { - var result = HttpHelper.Request(ApiConstants.Spend_AddCustomerSpend, HttpHelper.ModelToJson(new AddCustomerSpendInputDto + var customerSpend = new AddCustomerSpendInputDto { RoomNumber = txtRoomNo.Text.Trim(), ProductNumber = txtSellNo.Text.Trim(), @@ -240,21 +241,22 @@ namespace EOM.TSHotelManagement.FormUI Price = Convert.ToDecimal(txtPrice.Text), WorkerNo = LoginInfo.WorkerNo, SoftwareVersion = LoginInfo.SoftwareVersion - })); + }; + var result = HttpHelper.Request(ApiConstants.Spend_AddCustomerSpend, customerSpend.ModelToJson()); var response = HttpHelper.JsonToModel(result.message!); if (response.Code != BusinessStatusCode.Success) { - UIMessageBox.ShowError(response.Message ?? "添加消费记录失败"); + AntdUI.Modal.open(this, UIMessageConstant.Error, response.Message ?? "添加消费记录失败"); return; } - UIMessageBox.Show("添加成功", "系统提示", UIStyle.Green); + AntdUI.Modal.open(this, UIMessageConstant.Success, "添加成功"); LoadSpendInfoByRoomNo(txtRoomNo.Text.Trim()); LoadSellThingInfo(); } catch (Exception ex) { - UIMessageBox.ShowError($"接口调用异常: {ex.Message}"); + AntdUI.Modal.open(this, UIMessageConstant.Error, $"接口调用异常: {ex.Message}"); return; } } @@ -269,17 +271,22 @@ namespace EOM.TSHotelManagement.FormUI { if (lblState.Visible == false) { - UIMessageBox.Show("请先输入消费的房间!", "提示信息", UIStyle.Red); + AntdUI.Modal.open(this, UIMessageConstant.Warning, "请先输入消费的房间!"); return; } if (!spend.IsNullOrEmpty()) { if (spend.ConsumptionType == SpendType.Room.Code || spend.ConsumptionType == SpendType.Other.Code) { - UIMessageBox.Show($"此条消费记录非{SpendType.Product.Description}记录,无法删除!", "提示信息", UIStyle.Red); + AntdUI.Modal.open(this, UIMessageConstant.Error, $"此条消费记录非{SpendType.Product.Description}记录,无法删除!"); return; } - if (UIMessageDialog.ShowMessageDialog("你确定要撤回该消费记录吗?", UILocalize.WarningTitle, true, Style)) + var dr = AntdUI.Modal.open(new AntdUI.Modal.Config(this, UIMessageConstant.Information, $"你确定要撤回该消费记录吗?", AntdUI.TType.Info) + { + CancelText = LocalizationHelper.GetLocalizedString(UIMessageConstant.Eng_Wait, UIMessageConstant.Chs_Wait), + OkText = LocalizationHelper.GetLocalizedString(UIMessageConstant.Eng_Yes, UIMessageConstant.Chs_Yes) + }); + if (dr == DialogResult.OK) { using (TransactionScope scope = new TransactionScope()) { @@ -293,30 +300,30 @@ namespace EOM.TSHotelManagement.FormUI var response = HttpHelper.JsonToModel>(result.message); if (response.Code != BusinessStatusCode.Success) { - UIMessageBox.ShowError($"{ApiConstants.Sellthing_SelectSellThingByNameAndPrice}+接口服务异常,请提交Issue或尝试更新版本!"); + AntdUI.Modal.open(this, UIMessageConstant.Error, $"{ApiConstants.Sellthing_SelectSellThingByNameAndPrice}+接口服务异常,请提交Issue或尝试更新版本!"); return; } ReadSellThingOutputDto s = response.Data; decimal num = Convert.ToDecimal(spend.ConsumptionQuantity); decimal inboundStock = (s.Stock + num); - result = HttpHelper.Request(ApiConstants.Spend_UndoCustomerSpend, HttpHelper.ModelToJson(new UpdateSpendInputDto { SpendNumber = spend.SpendNumber })); + var model = new UpdateSpendInputDto { SpendNumber = spend.SpendNumber }; + result = HttpHelper.Request(ApiConstants.Spend_UndoCustomerSpend, model.ModelToJson()); var undoSpendResponse = HttpHelper.JsonToModel(result.message); if (undoSpendResponse.Code != BusinessStatusCode.Success) { - UIMessageBox.ShowError($"{ApiConstants.Spend_UndoCustomerSpend}+接口服务异常,请提交Issue或尝试更新版本!"); + AntdUI.Modal.open(this, UIMessageConstant.Error, $"{ApiConstants.Spend_UndoCustomerSpend}+接口服务异常,请提交Issue或尝试更新版本!"); return; } var sellThing = new UpdateSellThingInputDto { ProductName = s.ProductName, ProductPrice = s.ProductPrice, Stock = inboundStock, ProductNumber = s.ProductNumber, Specification = s.Specification }; - result = HttpHelper.Request(ApiConstants.Sellthing_UpdateSellthingInfo, HttpHelper.ModelToJson(sellThing)); + result = HttpHelper.Request(ApiConstants.Sellthing_UpdateSellthingInfo, sellThing.ModelToJson()); var updateResponse = HttpHelper.JsonToModel(result.message); if (updateResponse.Code != BusinessStatusCode.Success) { - UIMessageTip.ShowError("撤销失败!", 1000); RecordHelper.Record($"接口异常。Message:\n{updateResponse.Message}", Common.Core.LogLevel.Critical); - UIMessageBox.ShowError($"{ApiConstants.Sellthing_UpdateSellthingInfo}+接口服务异常,请提交Issue或尝试更新版本!"); + AntdUI.Modal.open(this, UIMessageConstant.Error, $"{ApiConstants.Sellthing_UpdateSellthingInfo}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - UIMessageTip.ShowOk("撤销成功!", 1000); + AntdUI.Modal.open(this, UIMessageConstant.Success, "撤销成功!"); #region 获取添加操作日志所需的信息 RecordHelper.Record(LoginInfo.WorkerNo + "-" + LoginInfo.WorkerName + "在" + Convert.ToDateTime(DateTime.Now) + "位于" + LoginInfo.SoftwareVersion + "执行:" + "帮助" + spend.CustomerNumber + "撤销了消费商品:" + txtSellName.Text + "操作!", Common.Core.LogLevel.Warning); #endregion @@ -334,12 +341,12 @@ namespace EOM.TSHotelManagement.FormUI } else { - UIMessageTip.ShowError("操作取消!", 1000); + AntdUI.Modal.open(this, UIMessageConstant.Warning, "操作取消!"); } } else { - UIMessageBox.Show("请选择要删除的消费记录!", "提示信息", UIStyle.Red); + AntdUI.Modal.open(this, UIMessageConstant.Warning, "请选择要删除的消费记录!"); } } @@ -366,7 +373,7 @@ namespace EOM.TSHotelManagement.FormUI string room = txtRoomNo.Text.Trim(); if (string.IsNullOrWhiteSpace(room) == true) { - UIMessageTip.ShowWarning("请输入消费房间号!", 1000); + AntdUI.Modal.open(this, UIMessageConstant.Warning, "请输入消费房间号!"); return; } dic = new Dictionary() @@ -377,7 +384,7 @@ namespace EOM.TSHotelManagement.FormUI var checkResponse = HttpHelper.JsonToModel>(result.message); if (checkResponse.Code != BusinessStatusCode.Success) { - UIMessageBox.ShowError($"{ApiConstants.Room_SelectRoomByRoomNo}+接口服务异常,请提交Issue或尝试更新版本!"); + AntdUI.Modal.open(this, UIMessageConstant.Error, $"{ApiConstants.Room_SelectRoomByRoomNo}+接口服务异常,请提交Issue或尝试更新版本!"); return; } ReadRoomOutputDto r = checkResponse.Data; @@ -414,7 +421,7 @@ namespace EOM.TSHotelManagement.FormUI { if (lblState.Visible == false) { - UIMessageBox.Show("请先输入消费的房间!", "提示信息", UIStyle.Red); + AntdUI.Modal.open(this, UIMessageConstant.Warning, "请先输入消费的房间!"); return; } if (e.Record is IList data) diff --git a/EOM.TSHotelManagement.FormUI/EOM.TSHotelManagement.FormUI.csproj b/EOM.TSHotelManagement.FormUI/EOM.TSHotelManagement.FormUI.csproj index f372872..e8208b7 100644 --- a/EOM.TSHotelManagement.FormUI/EOM.TSHotelManagement.FormUI.csproj +++ b/EOM.TSHotelManagement.FormUI/EOM.TSHotelManagement.FormUI.csproj @@ -62,7 +62,7 @@ Form - + Form @@ -83,9 +83,6 @@ Form - - UserControl - UserControl @@ -121,7 +118,7 @@ - + -- Gitee From 701c2737632496ff101475d6f15d79911e79688a Mon Sep 17 00:00:00 2001 From: ck_yeun9 Date: Sun, 31 Aug 2025 14:35:46 +0800 Subject: [PATCH 11/15] replace all controls from Sunny UI to AntdUI --- .../UIControlConstant.cs | 31 + .../UIControlIconConstant.cs | 31 + .../UIMessageConstant.cs | 6 +- .../Util/ApplicationUtil.cs | 2 +- .../ClientCustomControls/ucRoom.Designer.cs | 70 +- .../ClientCustomControls/ucRoom.cs | 238 +++--- .../ClientCustomControls/ucRoom.resx | 3 - .../ucRoomType.Designer.cs | 6 +- .../ucWindowHeader.Designer.cs | 7 +- .../ClientCustomControls/ucWindowHeader.cs | 126 +++- .../ClientCustomControls/ucWindowHeader.resx | 2 +- .../ClientEntrance/FrmLoading.Designer.cs | 5 +- .../ClientEntrance/FrmLoading.cs | 12 +- .../ClientEntrance/FrmLoading.resx | 77 ++ .../ClientEntrance/FrmLogin.cs | 20 +- .../ClientMain/FrmMain.Designer.cs | 287 ++------ .../ClientMain/FrmMain.cs | 262 +++---- .../ClientMain/FrmMain.resx | 29 +- .../ClientModule/FrmAbout.Designer.cs | 29 +- .../ClientModule/FrmAbout.cs | 2 +- .../FrmAccountSecurity.Designer.cs | 30 +- .../ClientModule/FrmAccountSecurity.cs | 11 +- .../ClientModule/FrmAccountSecurity.resx | 22 + .../ClientModule/FrmAvator.Designer.cs | 13 + .../ClientModule/FrmAvator.cs | 37 +- .../ClientModule/FrmAvator.resx | 23 + .../ClientModule/FrmChangeRoom.Designer.cs | 163 +++-- .../ClientModule/FrmChangeRoom.cs | 27 +- .../ClientModule/FrmChangeRoom.resx | 54 +- .../ClientModule/FrmCheckIn.Designer.cs | 494 +++++-------- .../ClientModule/FrmCheckIn.cs | 95 +-- .../FrmCheckOutDetail.Designer.cs | 380 ++++++++++ ...rmCheckOutForm.cs => FrmCheckOutDetail.cs} | 317 +++----- ...eckOutForm.resx => FrmCheckOutDetail.resx} | 0 .../ClientModule/FrmCheckOutForm.Designer.cs | 680 ------------------ .../ClientModule/FrmCustomerInfo.Designer.cs | 581 +++++++-------- .../ClientModule/FrmCustomerInfo.cs | 96 +-- .../ClientModule/FrmCustomerInfo.resx | 54 +- .../FrmCustomerManagement.Designer.cs | 78 +- .../ClientModule/FrmCustomerManagement.cs | 4 +- .../ClientModule/FrmCustomerManagement.resx | 4 +- .../ClientModule/FrmEditInputs.Designer.cs | 164 +++-- .../ClientModule/FrmEditInputs.cs | 45 +- .../ClientModule/FrmMySpace.Designer.cs | 137 ---- .../ClientModule/FrmMySpace.cs | 78 -- .../ClientModule/FrmMySpace.resx | 141 ---- .../ClientModule/FrmPersonnelInfo.Designer.cs | 168 +++-- .../ClientModule/FrmPersonnelInfo.cs | 48 +- .../ClientModule/FrmPersonnelInfo.resx | 23 + .../ClientModule/FrmProgress.Designer.cs | 2 +- .../ClientModule/FrmReserList.Designer.cs | 71 +- .../ClientModule/FrmReserList.cs | 30 +- .../FrmReserManagement.Designer.cs | 2 + .../ClientModule/FrmReserManagement.cs | 21 +- .../ClientModule/FrmRoomManagement.cs | 43 +- .../FrmRoomStateManagement.Designer.cs | 36 +- .../ClientModule/FrmRoomStateManagement.cs | 26 +- .../ClientModule/FrmScreenLock.Designer.cs | 9 +- .../ClientModule/FrmScreenLock.cs | 10 +- .../ClientModule/FrmSellThing.Designer.cs | 212 +++--- .../ClientModule/FrmSellThing.cs | 73 +- .../EOM.TSHotelManagement.FormUI.csproj | 9 +- .../Services/NotificationService.cs | 55 ++ EOM.TSHotelManagement.FormUI/icon/update.ico | Bin 0 -> 4286 bytes topsky-hotel-management-system-web-api | 2 +- 65 files changed, 2479 insertions(+), 3334 deletions(-) create mode 100644 EOM.TSHotelManagement.Common/UIControlConstant.cs create mode 100644 EOM.TSHotelManagement.Common/UIControlIconConstant.cs create mode 100644 EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutDetail.Designer.cs rename EOM.TSHotelManagement.FormUI/ClientModule/{FrmCheckOutForm.cs => FrmCheckOutDetail.cs} (47%) rename EOM.TSHotelManagement.FormUI/ClientModule/{FrmCheckOutForm.resx => FrmCheckOutDetail.resx} (100%) delete mode 100644 EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutForm.Designer.cs delete mode 100644 EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.Designer.cs delete mode 100644 EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.cs delete mode 100644 EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.resx create mode 100644 EOM.TSHotelManagement.FormUI/Services/NotificationService.cs create mode 100644 EOM.TSHotelManagement.FormUI/icon/update.ico diff --git a/EOM.TSHotelManagement.Common/UIControlConstant.cs b/EOM.TSHotelManagement.Common/UIControlConstant.cs new file mode 100644 index 0000000..68af2c0 --- /dev/null +++ b/EOM.TSHotelManagement.Common/UIControlConstant.cs @@ -0,0 +1,31 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace EOM.TSHotelManagement.Common +{ + public class UIControlConstant + { + public const string CheckInRoom = "入住房间"; + public const string ReservationRoom = "预约房间"; + public const string ChangeRoom = "更换房间"; + public const string ChangeStateRoom = "更换房间状态"; + public const string CheckOutRoom = "结算退房"; + public const string CustomerInformation = "客户信息"; + + public const string ChangeAccount = "切换账号"; + public const string SystemLock = "系统锁定"; + public const string ExitSystem = "退出系统"; + public const string Help = "帮助"; + public const string VisitOfficial = "访问官网"; + public const string About = "关于"; + public const string UpdateLog = "查看更新日志"; + + public const string PersonnalCenter = "个人中心"; + public const string PersonnalInformation = "我的信息"; + public const string AccountSecurity = "账号安全"; + public const string AccountAvator = "账号头像"; + } +} diff --git a/EOM.TSHotelManagement.Common/UIControlIconConstant.cs b/EOM.TSHotelManagement.Common/UIControlIconConstant.cs new file mode 100644 index 0000000..bcee3b8 --- /dev/null +++ b/EOM.TSHotelManagement.Common/UIControlIconConstant.cs @@ -0,0 +1,31 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace EOM.TSHotelManagement.Common +{ + public class UIControlIconConstant + { + public const string ChangeAccount = ""; + public const string PersonnalCenter = ""; + public const string SystemLock = ""; + public const string Help = ""; + public const string Exit = ""; + public const string PersonnalInformation = ""; + public const string AccountSecurity = ""; + public const string AccountAvator = ""; + public const string Internet = ""; + public const string Log = ""; + public const string About = ""; + + + public const string Clock = ""; + public const string CheckIn = ""; + public const string CheckOut = ""; + public const string ChangeRoom = ""; + public const string ChangeState = ""; + public const string CustomerInformation = ""; + } +} diff --git a/EOM.TSHotelManagement.Common/UIMessageConstant.cs b/EOM.TSHotelManagement.Common/UIMessageConstant.cs index 203a362..9015ee6 100644 --- a/EOM.TSHotelManagement.Common/UIMessageConstant.cs +++ b/EOM.TSHotelManagement.Common/UIMessageConstant.cs @@ -15,8 +15,10 @@ namespace EOM.TSHotelManagement.Common public const string Information = "信息"; public const string Ok = "确定"; public const string Chs_Cancel = "取消"; - public const string Chs_Yes = "好的"; - public const string Chs_No = "不了"; + public const string Chs_Ok = "好的"; + public const string Eng_Ok = "OK"; + public const string Chs_Yes = "是"; + public const string Chs_No = "否"; public const string Chs_Wait = "稍后"; public const string Eng_Cancel = "Cancel"; public const string Eng_Yes = "Yes"; diff --git a/EOM.TSHotelManagement.Common/Util/ApplicationUtil.cs b/EOM.TSHotelManagement.Common/Util/ApplicationUtil.cs index b0d326e..d84931e 100644 --- a/EOM.TSHotelManagement.Common/Util/ApplicationUtil.cs +++ b/EOM.TSHotelManagement.Common/Util/ApplicationUtil.cs @@ -29,7 +29,7 @@ namespace EOM.TSHotelManagement.Common }; ResponseMsg result = HttpHelper.Request(ApiConstants.Utility_SelectCardCode, input.ModelToJson()); var response = HttpHelper.JsonToModel>(result.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { return new Card { message = "SelectCardCode+接口服务异常,请提交Issue或尝试更新版本!" }; } diff --git a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.Designer.cs index 8899f24..010ba0b 100644 --- a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.Designer.cs @@ -28,16 +28,7 @@ /// private void InitializeComponent() { - components = new System.ComponentModel.Container(); btnRoom = new AntdUI.Button(); - cmsMain = new ContextMenuStrip(components); - tsmiReserRoom = new ToolStripMenuItem(); - tsmiCheckIn = new ToolStripMenuItem(); - tsmiCheckOut = new ToolStripMenuItem(); - tsmiChangeRoom = new ToolStripMenuItem(); - tsmiSelectUserInfo = new ToolStripMenuItem(); - tsmiChangeState = new ToolStripMenuItem(); - cmsMain.SuspendLayout(); SuspendLayout(); // // btnRoom @@ -45,8 +36,6 @@ btnRoom.AutoEllipsis = true; btnRoom.BackColor = Color.Transparent; btnRoom.BackgroundImage = Properties.Resources.可住状态; - btnRoom.BackgroundImageLayout = AntdUI.TFit.Cover; - btnRoom.ContextMenuStrip = cmsMain; btnRoom.Font = new Font("Microsoft YaHei UI", 9F, FontStyle.Regular, GraphicsUnit.Point, 134); btnRoom.Ghost = true; btnRoom.IconRatio = 0.5F; @@ -59,56 +48,7 @@ btnRoom.TabIndex = 0; btnRoom.Text = "总统套房\r\n\r\nBS001\r\n\r\n小T呀"; btnRoom.Click += btnRoom_Click; - // - // cmsMain - // - cmsMain.ImageScalingSize = new Size(28, 28); - cmsMain.Items.AddRange(new ToolStripItem[] { tsmiReserRoom, tsmiCheckIn, tsmiCheckOut, tsmiChangeRoom, tsmiSelectUserInfo, tsmiChangeState }); - cmsMain.Name = "cmsMain"; - cmsMain.Size = new Size(149, 136); - cmsMain.Opening += cmsMain_Opening; - // - // tsmiReserRoom - // - tsmiReserRoom.Name = "tsmiReserRoom"; - tsmiReserRoom.Size = new Size(148, 22); - tsmiReserRoom.Text = "预约房间"; - tsmiReserRoom.Click += tsmiReserRoom_Click; - // - // tsmiCheckIn - // - tsmiCheckIn.Name = "tsmiCheckIn"; - tsmiCheckIn.Size = new Size(148, 22); - tsmiCheckIn.Text = "入住房间"; - tsmiCheckIn.Click += tsmiCheckIn_Click; - // - // tsmiCheckOut - // - tsmiCheckOut.Name = "tsmiCheckOut"; - tsmiCheckOut.Size = new Size(148, 22); - tsmiCheckOut.Text = "结算退房"; - tsmiCheckOut.Click += tsmiCheckOut_Click; - // - // tsmiChangeRoom - // - tsmiChangeRoom.Name = "tsmiChangeRoom"; - tsmiChangeRoom.Size = new Size(148, 22); - tsmiChangeRoom.Text = "转换房间"; - tsmiChangeRoom.Click += tsmiChangeRoom_Click; - // - // tsmiSelectUserInfo - // - tsmiSelectUserInfo.Name = "tsmiSelectUserInfo"; - tsmiSelectUserInfo.Size = new Size(148, 22); - tsmiSelectUserInfo.Text = "查看用户信息"; - tsmiSelectUserInfo.Click += tsmiSelectUserInfo_Click; - // - // tsmiChangeState - // - tsmiChangeState.Name = "tsmiChangeState"; - tsmiChangeState.Size = new Size(148, 22); - tsmiChangeState.Text = "修改房间状态"; - tsmiChangeState.Click += tsmiChangeState_Click; + btnRoom.MouseClick += btnRoom_MouseClick; // // ucRoom // @@ -118,7 +58,6 @@ Name = "ucRoom"; Size = new Size(122, 102); Load += ucRoom_Load; - cmsMain.ResumeLayout(false); ResumeLayout(false); } @@ -126,12 +65,5 @@ public AntdUI.Button btnRoom; private AntdUI.Button button1; - private System.Windows.Forms.ContextMenuStrip cmsMain; - private System.Windows.Forms.ToolStripMenuItem tsmiReserRoom; - private System.Windows.Forms.ToolStripMenuItem tsmiCheckIn; - private System.Windows.Forms.ToolStripMenuItem tsmiCheckOut; - private System.Windows.Forms.ToolStripMenuItem tsmiChangeRoom; - private System.Windows.Forms.ToolStripMenuItem tsmiSelectUserInfo; - private System.Windows.Forms.ToolStripMenuItem tsmiChangeState; } } diff --git a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.cs b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.cs index 28e7625..b1c4ab8 100644 --- a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.cs +++ b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.cs @@ -1,4 +1,6 @@ -using EOM.TSHotelManagement.Common; +using AntdUI; +using AntdUI.Svg; +using EOM.TSHotelManagement.Common; using EOM.TSHotelManagement.Common.Contract; using EOM.TSHotelManagement.Common.Util; using EOM.TSHotelManagement.FormUI.Properties; @@ -155,6 +157,19 @@ namespace EOM.TSHotelManagement.FormUI uint oldGWLEx = SetWindowLong(this.Handle, GWL_EXSTYLE, WS_EX_TRANSPARENT | WS_EX_LAYERED); } + + AntdUI.IContextMenuStripItem[] menulist = new AntdUI.IContextMenuStripItem[] + { + new AntdUI.ContextMenuStripItem(UIControlConstant.ReservationRoom).SetIcon(UIControlIconConstant.Clock), + new AntdUI.ContextMenuStripItem(UIControlConstant.CheckInRoom).SetIcon(UIControlIconConstant.CheckIn), + new AntdUI.ContextMenuStripItem(UIControlConstant.CheckOutRoom).SetIcon(UIControlIconConstant.CheckOut), + + new AntdUI.ContextMenuStripItem(UIControlConstant.ChangeRoom).SetIcon(UIControlIconConstant.ChangeRoom), + new AntdUI.ContextMenuStripItem(UIControlConstant.ChangeStateRoom).SetIcon(UIControlIconConstant.ChangeState), + + new AntdUI.ContextMenuStripItem(UIControlConstant.CustomerInformation).SetIcon(UIControlIconConstant.CustomerInformation) + }; + public void LoadRoomInfo() { co_RoomNo = romRoomInfo.RoomNumber; @@ -203,7 +218,7 @@ namespace EOM.TSHotelManagement.FormUI btnRoom.BackgroundImage = Resources.预约状态; break; } - btnRoom.BackgroundImageLayout = AntdUI.TFit.Cover; + btnRoom.BackgroundImageLayout = AntdUI.TFit.Fill; } ReadRoomOutputDto r; @@ -212,99 +227,32 @@ namespace EOM.TSHotelManagement.FormUI FrmReserManager frm = new FrmReserManager(); frm.ShowDialog(); } - private void cmsMain_Opening(object sender, CancelEventArgs e) - { - if (lblMark == "Mark") - { - e.Cancel = true; - return; - } - var roomText = btnRoom.Text?.Split("\n\n"); - if (roomText == null || roomText.Length < 2) - { - AntdUI.Modal.open(_fromRoomManagement, UIMessageConstant.Error, "房间信息不完整!"); - return; - } - getParam = new Dictionary - { - { nameof(ReadRoomInputDto.RoomNumber), roomText[1] } - }; - result = HttpHelper.Request(ApiConstants.Room_SelectRoomByRoomNo, getParam); - var response = HttpHelper.JsonToModel>(result.message); - - if (response.Code != BusinessStatusCode.Success) - { - AntdUI.Modal.open(_fromRoomManagement, UIMessageConstant.Error, $"{ApiConstants.Room_SelectRoomByRoomNo}+接口服务异常!"); - return; - } - r = response.Data; - if (r.RoomStateId == (int)Common.Core.RoomState.Vacant) - { - tsmiCheckIn.Enabled = true; - tsmiCheckOut.Enabled = false; - tsmiSelectUserInfo.Enabled = false; - tsmiChangeState.Enabled = true; - tsmiChangeRoom.Enabled = false; - tsmiReserRoom.Enabled = true; - } - else if (r.RoomStateId == (int)Common.Core.RoomState.Occupied) - { - tsmiCheckIn.Enabled = false; - tsmiCheckOut.Enabled = true; - tsmiSelectUserInfo.Enabled = true; - tsmiChangeState.Enabled = false; - tsmiChangeRoom.Enabled = true; - tsmiReserRoom.Enabled = false; - } - else if (r.RoomStateId == (int)Common.Core.RoomState.Dirty || r.RoomStateId == (int)Common.Core.RoomState.Maintenance) - { - tsmiCheckIn.Enabled = false; - tsmiCheckOut.Enabled = false; - tsmiSelectUserInfo.Enabled = false; - tsmiChangeState.Enabled = true; - tsmiChangeRoom.Enabled = false; - tsmiReserRoom.Enabled = false; - } - else - { - tsmiCheckIn.Enabled = true; - tsmiCheckOut.Enabled = false; - tsmiSelectUserInfo.Enabled = false; - tsmiChangeState.Enabled = true; - tsmiChangeRoom.Enabled = false; - tsmiReserRoom.Enabled = false; - } - } private void tsmiCheckIn_Click(object sender, EventArgs e) { if (romCustoInfo != null && romRoomInfo != null) { + rm_CustoNo = romCustoInfo.CustomerNumber; + rm_RoomNo = romRoomInfo.RoomNumber; + rm_RoomType = romRoomInfo.RoomName; + rm_RoomMoney = Convert.ToDecimal(romRoomInfo.RoomRent).ToString(); if (r.RoomStateId == new EnumHelper().GetEnumValue(Common.Core.RoomState.Reserved)) { - rm_CustoNo = romCustoInfo.CustomerNumber; - rm_RoomNo = romRoomInfo.RoomNumber; - rm_RoomType = romRoomInfo.RoomName; - rm_RoomMoney = Convert.ToDecimal(romRoomInfo.RoomRent).ToString(); rm_RoomStateId = (int)Common.Core.RoomState.Reserved; - AntdUI.Modal.open(_fromRoomManagement, UIMessageConstant.Error, "欢迎入住,请先注册客户信息!"); + NotificationService.ShowInfo("欢迎入住,请先注册客户信息!"); FrmReserList frm = new FrmReserList(); frm.ShowDialog(); return; } else { - rm_CustoNo = romCustoInfo.CustomerNumber; - rm_RoomNo = romRoomInfo.RoomNumber; - rm_RoomType = romRoomInfo.RoomName; - rm_RoomMoney = Convert.ToDecimal(romRoomInfo.RoomRent).ToString(); FrmCheckIn frm = new FrmCheckIn(); frm.ShowDialog(); } } else { - AntdUI.Modal.open(_fromRoomManagement, UIMessageConstant.Error, "房间信息不完整!"); + NotificationService.ShowError("房间信息不完整!"); return; } } @@ -312,10 +260,11 @@ namespace EOM.TSHotelManagement.FormUI private void tsmiCheckOut_Click(object sender, EventArgs e) { rm_CustoNo = romRoomInfo.CustomerNumber; + co_CustoName = romCustoInfo.CustomerName; rm_RoomNo = romRoomInfo.RoomNumber; rm_RoomType = romRoomInfo.RoomName; - FrmCheckOutForm frm = new FrmCheckOutForm(_loadingProgress); - frm.ShowDialog(this); + FrmCheckOutDetail frm = new FrmCheckOutDetail(); + frm.ShowDialog(); } public static string? RoomNo; @@ -325,10 +274,10 @@ namespace EOM.TSHotelManagement.FormUI { if (romCustoInfo != null && romRoomInfo != null) { - var dr = AntdUI.Modal.open(new AntdUI.Modal.Config(_fromRoomManagement, UIMessageConstant.Information, "确定要进行转房吗?", AntdUI.TType.Info) + var dr = AntdUI.Modal.open(new AntdUI.Modal.Config(null, UIMessageConstant.Information, "是否要进行房间更换?", AntdUI.TType.Info) { - CancelText = LocalizationHelper.GetLocalizedString("No", "不了"), - OkText = LocalizationHelper.GetLocalizedString("Yes", "是的") + CancelText = LocalizationHelper.GetLocalizedString(UIMessageConstant.Eng_No, UIMessageConstant.Chs_No), + OkText = LocalizationHelper.GetLocalizedString(UIMessageConstant.Eng_Yes, UIMessageConstant.Chs_Yes) }); if (dr == DialogResult.OK) { @@ -341,15 +290,14 @@ namespace EOM.TSHotelManagement.FormUI } else { - AntdUI.Modal.open(_fromRoomManagement, UIMessageConstant.Error, "房间信息不完整!"); + NotificationService.ShowError("房间信息不完整!"); return; } } private void tsmiSelectUserInfo_Click(object sender, EventArgs e) { - rm_CustoNo = romCustoInfo.CustomerNumber; - FrmCustomerInfo frm = new FrmCustomerInfo(); + FrmCustomerInfo frm = new FrmCustomerInfo(romCustoInfo.CustomerNumber); frm.ShowDialog(); } @@ -357,7 +305,7 @@ namespace EOM.TSHotelManagement.FormUI { if (r.RoomStateId == (int)Common.Core.RoomState.Reserved) { - var dr = AntdUI.Modal.open(new AntdUI.Modal.Config(_fromRoomManagement, UIMessageConstant.Information, "当前房间已被预约,确认更改状态后将会删除原本预约状态及信息,你确定吗?", AntdUI.TType.Info) + var dr = AntdUI.Modal.open(new AntdUI.Modal.Config(null, UIMessageConstant.Warning, "当前房间已被预约,确认更改状态后将会删除原本预约状态及信息,你确定吗?", AntdUI.TType.Warn) { CancelText = LocalizationHelper.GetLocalizedString(UIMessageConstant.Eng_No, UIMessageConstant.Chs_No), OkText = LocalizationHelper.GetLocalizedString(UIMessageConstant.Eng_Yes, UIMessageConstant.Chs_Yes) @@ -370,9 +318,9 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Reser_SelectReserInfoByRoomNo, getParam); var reserResponse = HttpHelper.JsonToModel>(result.message); - if (reserResponse.Code != BusinessStatusCode.Success) + if (reserResponse.Success == false) { - AntdUI.Modal.open(_fromRoomManagement, UIMessageConstant.Error, $"{ApiConstants.Reser_SelectReserInfoByRoomNo}+接口服务异常!"); + NotificationService.ShowError($"{ApiConstants.Reser_SelectReserInfoByRoomNo}+接口服务异常!"); return; } else @@ -383,9 +331,9 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Reser_DeleteReserInfo, reser.ModelToJson()); var reserResult = HttpHelper.JsonToModel(result.message); - if (reserResult.Code != BusinessStatusCode.Success) + if (reserResult.Success == false) { - AntdUI.Modal.open(_fromRoomManagement, UIMessageConstant.Error, $"{ApiConstants.Reser_DeleteReserInfo}+接口服务异常!"); + NotificationService.ShowError($"{ApiConstants.Reser_DeleteReserInfo}+接口服务异常!"); return; } } @@ -400,7 +348,119 @@ namespace EOM.TSHotelManagement.FormUI } else { - AntdUI.Modal.open(_fromRoomManagement, UIMessageConstant.Error, "房间信息不完整!"); + NotificationService.ShowError("房间信息不完整!"); + } + } + + private void RightKey(AntdUI.ContextMenuStripItem it) + { + switch (it.Text) + { + case UIControlConstant.ReservationRoom: + tsmiReserRoom_Click(this, EventArgs.Empty); + break; + case UIControlConstant.CheckInRoom: + tsmiCheckIn_Click(this, EventArgs.Empty); + break; + case UIControlConstant.ChangeRoom: + tsmiChangeRoom_Click(this, EventArgs.Empty); + break; + case UIControlConstant.CheckOutRoom: + tsmiCheckOut_Click(this, EventArgs.Empty); + break; + case UIControlConstant.CustomerInformation: + tsmiSelectUserInfo_Click(this, EventArgs.Empty); + break; + case UIControlConstant.ChangeStateRoom: + tsmiChangeState_Click(this, EventArgs.Empty); + break; + } + } + + private void ContextMenuItemHandler() + { + var roomText = btnRoom.Text?.Split("\n\n"); + if (roomText == null || roomText.Length < 2) + { + NotificationService.ShowError("房间信息不完整!"); + return; + } + getParam = new Dictionary + { + { nameof(ReadRoomInputDto.RoomNumber), roomText[1] } + }; + result = HttpHelper.Request(ApiConstants.Room_SelectRoomByRoomNo, getParam); + var response = HttpHelper.JsonToModel>(result.message); + + if (response.Success == false) + { + NotificationService.ShowError($"{ApiConstants.Room_SelectRoomByRoomNo}+接口服务异常!"); + return; + } + r = response.Data; + + foreach (ContextMenuStripItem item in menulist) + { + switch (r.RoomStateId) + { + case (int)Common.Core.RoomState.Vacant: + item.Enabled = item.Text switch + { + UIControlConstant.CheckInRoom => true, + UIControlConstant.ReservationRoom => true, + UIControlConstant.ChangeRoom => false, + UIControlConstant.CheckOutRoom => false, + UIControlConstant.CustomerInformation => false, + _ => item.Enabled + }; + break; + case (int)Common.Core.RoomState.Occupied: + item.Enabled = item.Text switch + { + UIControlConstant.CheckInRoom => false, + UIControlConstant.ReservationRoom => false, + UIControlConstant.ChangeRoom => true, + UIControlConstant.CheckOutRoom => true, + UIControlConstant.CustomerInformation => true, + _ => item.Enabled + }; + break; + case (int)Common.Core.RoomState.Dirty: + case (int)Common.Core.RoomState.Maintenance: + item.Enabled = item.Text switch + { + UIControlConstant.CheckInRoom => false, + UIControlConstant.ReservationRoom => false, + UIControlConstant.ChangeRoom => false, + UIControlConstant.CheckOutRoom => false, + UIControlConstant.CustomerInformation => false, + _ => item.Enabled + }; + break; + default: + item.Enabled = item.Text switch + { + UIControlConstant.CheckInRoom => true, + UIControlConstant.ReservationRoom => false, + UIControlConstant.ChangeRoom => false, + UIControlConstant.CheckOutRoom => false, + UIControlConstant.CustomerInformation => false, + _ => item.Enabled + }; + break; + } + } + + } + + private void btnRoom_MouseClick(object sender, MouseEventArgs e) + { + ContextMenuItemHandler(); + if (e.Button == MouseButtons.Right) + { + AntdUI.ContextMenuStrip.Config config = new AntdUI.ContextMenuStrip.Config(this, RightKey, menulist); + config.Font = new Font("Noto Sans SC", 9f, FontStyle.Bold); + AntdUI.ContextMenuStrip.open(config); } } } diff --git a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.resx b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.resx index 98b3243..8b2ff64 100644 --- a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.resx +++ b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.resx @@ -117,7 +117,4 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 17, 17 - \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoomType.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoomType.Designer.cs index d92e2a8..2028a1a 100644 --- a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoomType.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoomType.Designer.cs @@ -34,9 +34,9 @@ // btnRoomType // btnRoomType.Font = new Font("Noto Sans SC", 10.5F, FontStyle.Regular, GraphicsUnit.Point, 0); - btnRoomType.Location = new Point(6, 3); + btnRoomType.Location = new Point(2, 0); btnRoomType.Name = "btnRoomType"; - btnRoomType.Size = new Size(107, 34); + btnRoomType.Size = new Size(113, 37); btnRoomType.TabIndex = 0; btnRoomType.Type = AntdUI.TTypeMini.Info; // @@ -46,7 +46,7 @@ AutoScaleMode = AutoScaleMode.Font; Controls.Add(btnRoomType); Name = "ucRoomType"; - Size = new Size(107, 37); + Size = new Size(117, 38); ResumeLayout(false); } diff --git a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucWindowHeader.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucWindowHeader.Designer.cs index 5323332..5a950e7 100644 --- a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucWindowHeader.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucWindowHeader.Designer.cs @@ -63,24 +63,26 @@ btnMinimize.Anchor = AnchorStyles.Right; btnMinimize.BackColor = Color.FromArgb(22, 119, 255); btnMinimize.DisplayStyle = AntdUI.TButtonDisplayStyle.Text; - btnMinimize.Location = new Point(337, 5); + btnMinimize.Location = new Point(333, 3); btnMinimize.Name = "btnMinimize"; btnMinimize.Size = new Size(23, 25); btnMinimize.TabIndex = 141; btnMinimize.Text = "—"; btnMinimize.Type = AntdUI.TTypeMini.Info; + btnMinimize.Click += btnMinimize_Click; // // btnClose // btnClose.Anchor = AnchorStyles.Top | AnchorStyles.Right; btnClose.BackColor = Color.FromArgb(22, 119, 255); btnClose.DisplayStyle = AntdUI.TButtonDisplayStyle.Text; - btnClose.Location = new Point(366, 6); + btnClose.Location = new Point(362, 4); btnClose.Name = "btnClose"; btnClose.Size = new Size(23, 25); btnClose.TabIndex = 140; btnClose.Text = "×"; btnClose.Type = AntdUI.TTypeMini.Info; + btnClose.Click += btnClose_Click; // // tlpContainer // @@ -105,6 +107,7 @@ Controls.Add(tlpContainer); Name = "ucWindowHeader"; Size = new Size(391, 35); + Load += ucWindowHeader_Load; phCustoHeader.ResumeLayout(false); ResumeLayout(false); } diff --git a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucWindowHeader.cs b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucWindowHeader.cs index 4f7bf4a..03eea16 100644 --- a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucWindowHeader.cs +++ b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucWindowHeader.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; +using System.Drawing.Drawing2D; using System.Linq; using System.Text; using System.Threading.Tasks; @@ -16,6 +17,8 @@ namespace EOM.TSHotelManagement.FormUI { InitializeComponent(); if (!DesignMode) SetDefaults(); + this.Visible = true; + phCustoHeader.Visible = true; } public ucWindowHeader(string title, string subTitle, Image? icon = null, @@ -25,8 +28,65 @@ namespace EOM.TSHotelManagement.FormUI ApplySettings(title, subTitle, icon, showIcon, showClose, showMinimize); } - private void ApplySettings(string title, string subTitle, Image? icon, - bool showIcon, bool showClose, bool showMinimize) + + #region 房态图圆角代码 + public GraphicsPath GetRoundRectPath(RectangleF rect, float radius) + { + return GetRoundRectPath(rect.X, rect.Y, rect.Width, rect.Height, radius); + } + public GraphicsPath GetRoundRectPath(float X, float Y, float width, float height, float radius) + { + GraphicsPath path = new GraphicsPath(); + path.AddLine(X + radius, Y, (X + width) - (radius * 2f), Y); + path.AddArc((X + width) - (radius * 2f), Y, radius * 2f, radius * 2f, 270f, 100f); + path.AddLine((float)(X + width), (float)(Y + radius), (float)(X + width), (float)((Y + height) - (radius * 2f))); + path.AddArc((float)((X + width) - (radius * 2f)), (float)((Y + height) - (radius * 2f)), (float)(radius * 2f), (float)(radius * 2f), 0f, 100f); + path.AddLine((float)((X + width) - (radius * 2f)), (float)(Y + height), (float)(X + radius), (float)(Y + height)); + path.AddArc(X, (Y + height) - (radius * 2f), radius * 2f, radius * 2f, 100f, 100f); + path.AddLine(X, (Y + height) - (radius * 2f), X, Y + radius); + path.AddArc(X, Y, radius * 2f, radius * 2f, 180f, 100f); + path.CloseFigure(); + return path; + } + + //窗体圆角代码开始 + public void SetWindowRegion() + { + System.Drawing.Drawing2D.GraphicsPath FormPath; + FormPath = new System.Drawing.Drawing2D.GraphicsPath(); + Rectangle rect = new Rectangle(0, 22, this.Width, this.Height - 22); + //this.Left-10,this.Top-10,this.Width-10,this.Height-10); + FormPath = GetRoundedRectPath(rect, 30); + this.Region = new Region(FormPath); + } + private GraphicsPath GetRoundedRectPath(Rectangle rect, int radius) + { + int diameter = radius; + Rectangle arcRect = new Rectangle(rect.Location, new Size(diameter, diameter)); + GraphicsPath path = new GraphicsPath(); + // 左上角 + path.AddArc(arcRect, 180, 90); + // 右上角 + arcRect.X = rect.Right - diameter; + path.AddArc(arcRect, 270, 90); + // 右下角 + arcRect.Y = rect.Bottom - diameter; + path.AddArc(arcRect, 0, 90); + // 左下角 + arcRect.X = rect.Left; + path.AddArc(arcRect, 90, 90); + path.CloseFigure(); + return path; + } + protected override void OnResize(System.EventArgs e) + { + this.Region = null; + SetWindowRegion(); + } + #endregion + + + public void ApplySettings(string title, string subTitle, Image? icon, bool showIcon, bool showClose, bool showMinimize) { phCustoHeader.Text = title; phCustoHeader.SubText = subTitle; @@ -34,6 +94,45 @@ namespace EOM.TSHotelManagement.FormUI phCustoHeader.Icon = icon; btnClose.Visible = showClose; btnMinimize.Visible = showMinimize; + phCustoHeader.Refresh(); + this.Refresh(); + } + + public void ApplySettings(string title, string subTitle, Image? icon) + { + phCustoHeader.Text = title; + phCustoHeader.SubText = subTitle; + phCustoHeader.ShowIcon = true; + phCustoHeader.Icon = icon; + btnClose.Visible = true; + btnMinimize.Visible = true; + phCustoHeader.Refresh(); + this.Refresh(); + } + + public void ApplySettingsWithoutIcon(string title, string subTitle, Image? icon) + { + phCustoHeader.Text = title; + phCustoHeader.SubText = subTitle; + phCustoHeader.ShowIcon = false; + phCustoHeader.Icon = null; + btnClose.Visible = true; + btnMinimize.Visible = false; + phCustoHeader.Refresh(); + this.Refresh(); + } + + public void ApplySettingsWithoutMinimize(string title, string subTitle, Image? icon, + bool showIcon = true, bool showClose = true) + { + phCustoHeader.Text = title; + phCustoHeader.SubText = subTitle; + phCustoHeader.ShowIcon = showIcon; + phCustoHeader.Icon = icon; + btnClose.Visible = showClose; + btnMinimize.Visible = false; + phCustoHeader.Refresh(); + this.Refresh(); } private void SetDefaults() @@ -41,5 +140,28 @@ namespace EOM.TSHotelManagement.FormUI phCustoHeader.Text = string.Empty; phCustoHeader.SubText = string.Empty; } + + private void btnClose_Click(object sender, EventArgs e) + { + var parentForm = this.FindForm(); + if (parentForm != null) + { + parentForm.Close(); + } + } + + private void btnMinimize_Click(object sender, EventArgs e) + { + var parentForm = this.FindForm(); + if (parentForm != null) + { + parentForm.WindowState = FormWindowState.Minimized; + } + } + + private void ucWindowHeader_Load(object sender, EventArgs e) + { + this.Region = new Region(GetRoundRectPath(new RectangleF(0, 0, this.Width, this.Height), 6f)); + } } } diff --git a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucWindowHeader.resx b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucWindowHeader.resx index 3181f0f..6116d0e 100644 --- a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucWindowHeader.resx +++ b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucWindowHeader.resx @@ -121,7 +121,7 @@ iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO - vQAADr0BR/uQrQAAArxJREFUWEe9l02IjWEUx2eHzSQkX8m3TJKPktVk5WulJCzUlKhRI5NBjc0UGwss + vAAADrwBlbxySQAAArxJREFUWEe9l02IjWEUx2eHzSQkX8m3TJKPktVk5WulJCzUlKhRI5NBjc0UGwss KGnIShOlsVJsJinNhijZKJPERpnkY6N+R+d2njvnnnmf+7533Pzqbs7/nPOc933e5znndnTMEKBTRFYA W0VkW9TbjoisEpETIvIA+CYB4DfwDLgC7IjxM0afDrgVFywDGAH2xHyVAWbFhYEJ4K6I9IjIzvQDDgAX gHvApxBzNeYuBVgIPHZJ3gN90a8IYD7QD7x28Y80Z/QtBFgDjNcfQWQImBf9qgBcc0W8iHohwJgLOhX1 diff --git a/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.Designer.cs index 6c377c0..84d75fa 100644 --- a/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.Designer.cs @@ -28,6 +28,7 @@ /// private void InitializeComponent() { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmLoading)); lblTips = new AntdUI.Label(); lbInternetSoftwareVersion = new AntdUI.Label(); lblLocalSoftwareVersion = new AntdUI.Label(); @@ -99,6 +100,7 @@ // // lblReleaseLog // + lblReleaseLog.AutoScroll = true; lblReleaseLog.Location = new Point(12, 164); lblReleaseLog.Multiline = true; lblReleaseLog.Name = "lblReleaseLog"; @@ -118,6 +120,7 @@ Controls.Add(label1); Controls.Add(lblTips); FormBorderStyle = FormBorderStyle.FixedSingle; + Icon = (Icon)resources.GetObject("$this.Icon"); MaximizeBox = false; MinimizeBox = false; Name = "FrmLoading"; @@ -128,8 +131,6 @@ } #endregion - private Sunny.UI.UILabel lblDllVersion; - private Sunny.UI.UILabel uiLabel3; private AntdUI.Label lblTips; private AntdUI.Label lbInternetSoftwareVersion; private AntdUI.Label lblLocalSoftwareVersion; diff --git a/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.cs b/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.cs index b714335..cc3cc5b 100644 --- a/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.cs +++ b/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.cs @@ -79,7 +79,7 @@ namespace EOM.TSHotelManagement.FormUI } catch (Exception ex) { - AntdUI.Modal.open(this, "系统提示", $"检查更新时发生错误: {ex.Message}", TType.Info); + NotificationService.ShowError($"检查更新时发生错误: {ex.Message}"); OpenFallbackUrl(); } finally @@ -102,7 +102,7 @@ namespace EOM.TSHotelManagement.FormUI if (version.Equals(lblLocalSoftwareVersion.Text.Trim())) { LoginInfo.SoftwareReleaseLog = $"{releaseBody}"; - AntdUI.Modal.open(this, "系统提示", "当前已是最新版本,无需更新!", TType.Info); + NotificationService.ShowSuccess("当前已是最新版本,无需更新!"); Task.Run(() => threadPro()); return; } @@ -215,12 +215,12 @@ namespace EOM.TSHotelManagement.FormUI } catch (OperationCanceledException) { - AntdUI.Modal.open(this, "系统提示", "网络连接超时,无法下载更新。", TType.Info); + NotificationService.ShowError("网络连接超时,无法下载更新。"); OpenFallbackUrl(); } catch (Exception ex) { - AntdUI.Modal.open(this, "系统提示", $"下载更新时发生错误: {ex.Message}", TType.Info); + NotificationService.ShowError($"下载更新时发生错误: {ex.Message}"); OpenFallbackUrl(); } return false; @@ -250,7 +250,7 @@ namespace EOM.TSHotelManagement.FormUI } catch (Exception ex) { - AntdUI.Modal.open(this, LocalizationHelper.GetLocalizedString("System prompt", "系统提示"), LocalizationHelper.GetLocalizedString($"An error occurred while opening the browser: {ex.Message}", $"打开浏览器时发生错误: {ex.Message}"), TType.Error); + NotificationService.ShowError(LocalizationHelper.GetLocalizedString($"An error occurred while opening the browser: {ex.Message}", $"打开浏览器时发生错误: {ex.Message}")); } } @@ -259,7 +259,7 @@ namespace EOM.TSHotelManagement.FormUI if (RuntimeInformation.OSArchitecture != Architecture.X64) { lblTips.Text = LocalizationHelper.GetLocalizedString("Current Software only support x64 bit Architecture, running failure", "本应用仅支持x64位系统架构,运行失败"); - AntdUI.Modal.open(this, LocalizationHelper.GetLocalizedString("Tips", "系统提示"), LocalizationHelper.GetLocalizedString("Current Software only support x64 bit Architecture, running failure", "本应用不支持x64位系统架构,运行失败"), TType.Info); + NotificationService.ShowError(LocalizationHelper.GetLocalizedString("Current Software only support x64 bit Architecture, running failure", "本应用不支持x64位系统架构,运行失败")); Thread.Sleep(2000); ExitApplication(); return; diff --git a/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.resx b/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.resx index 14fe195..1a9bba6 100644 --- a/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.resx +++ b/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.resx @@ -120,4 +120,81 @@ 17, 17 + + + + AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAABAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8g////QP// + /2D///9g////gf///0D///9AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///yD///+B////v/// + ///////////////////////////////////////f////n////4EAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///yD///+B//////// + /////////////////////////////////////////////////////////////////9////9gAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///+B//////// + ////////////////////////////3////9////+/////v/////////////////////////////////// + //////+/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8g////gf// + ///////////////////////f////gf///0AAAAAAAAAAAAAAAAAAAAAAAAAAAP///yD///+B////n/// + ///////////////////////f////QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP// + /4H////////////////////f////gQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAA////IP///7//////////////////////////QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAD///+B////////////////////3////yAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///4H////////////////////fAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAA////QP///////////////////98AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///0D///////////////////+/AAAAAAAA + AAAAAAAAAAAAAP///yD///+////////////////f////IAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///4H///////////// + //////9AAAAAAAAAAAAAAAAA////YP///////////////////0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAP///2D/////////3wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP// + /7///////////////98AAAAAAAAAAAAAAAD///+///////////////+/AAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAA////v///////////////YAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAA////QP///////////////////2AAAAAA////IP///////////////////0AAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD////f//////////////9gAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAA////v///////////////nwAAAAD///+B///////////////fAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///9///////////////2AAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///9g////////////////AAAAAP///7////////////// + /4EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////3///////////////YAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///////////////////8g////v/// + ////////////YAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD////f//////// + //////9gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///9////////////// + /2D////f//////////////9AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP// + /9///////////////2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////3/// + ////////////YP///////////////////0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///+B////3/// + /4EAAAAA////3///////////////YP///yD///+f////3////yAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAD///+///////////////+B////3///////////////YAAAAAAAAAAAAAAAAAAAAAAAAAAA////IP// + /////////////////5/////f//////////////+B////3///////////////nwAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAP///9///////////////2D///+///////////////9gAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAA////3/////////////////////////////////////////////////////////9AAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAA////////////////////QP///5///////////////58AAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAD///8g////////////////////////////////////////////////////gQAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///yD///////////////////8g////YP///////////////wAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8g//////////////////////////////////////// + /4EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////gf//////////////3wAAAAAAAAAA//////// + ////////////YAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8g//////////////////////// + //////+BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///yD////f//////////////+BAAAAAAAA + AAD///+/////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8g//////// + ////////////gQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////YP//////////////3/// + /0AAAAAAAAAAAP///0D///////////////////+BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAD///8g////gf///2AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///yD///////////// + //////+fAAAAAAAAAAAAAAAAAAAAAP///5////////////////////9AAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8g////v/// + ////////////3////yAAAAAAAAAAAAAAAAAAAAAAAAAAAP///7////////////////////9AAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////IP// + /7////////////////////+BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////IP////////////////// + //////+BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP// + /yD////f////////////////////nwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////QP// + ///////////////////////f////gQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP// + /yD///+B/////////////////////////58AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAA////IP///9//////////////////////////3////7////+B////YP///0D///9A////YP// + /4H///+///////////////////////////////+BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAA////IP///4H///////////////////////////////////////////// + ///////////////////////////////////////f////gQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///yD///+f//////////////////////// + ///////////////////////////////////////f////gQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8g////gf// + /4H///+/////3//////////f////3////7////+B////QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAA//9////AA///AAH//AAAf/gP4D/wP/wf4P/+D+H//4fD//+Hx/5/w4f8 + f+OP/H/hD/x/8Q/8f/Ef/H/xH/x/8R/EZ/AfwAPxH8AH8Q/gB/GP8A/hj/gf4Yf8P+PD/v/Dw///h+H/ + /wfwf/4P+B/4H/wDwD/+AAB//4AB///gD/8= + + \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLogin.cs b/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLogin.cs index 5882a18..3b27600 100644 --- a/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLogin.cs +++ b/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLogin.cs @@ -105,13 +105,13 @@ namespace EOM.TSHotelManagement.FormUI { if (txtAccount.Text == "") { - AntdUI.Modal.open(this, LocalizationHelper.GetLocalizedString("System prompt", "系统提示"), LocalizationHelper.GetLocalizedString("Please input employee number or email", "请输入员工编号或邮箱地址"), TType.Error); + NotificationService.ShowError(LocalizationHelper.GetLocalizedString("Please input employee number or email", "请输入员工编号或邮箱地址")); txtAccount.Focus(); return false; } if (txtWorkerPwd.Text == "") { - AntdUI.Modal.open(this, LocalizationHelper.GetLocalizedString("System prompt", "系统提示"), LocalizationHelper.GetLocalizedString("Please input password", "请输入员工密码"), TType.Error); + NotificationService.ShowError(LocalizationHelper.GetLocalizedString("Please input password", "请输入员工密码")); txtWorkerPwd.Focus(); return false; } @@ -132,9 +132,9 @@ namespace EOM.TSHotelManagement.FormUI var response = HttpHelper.JsonToModel>(result.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { - AntdUI.Modal.open(this, LocalizationHelper.GetLocalizedString("System prompt", "系统提示"), LocalizationHelper.GetLocalizedString($"{ApiConstants.Employee_SelectEmployeeInfoByEmployeeIdAndEmployeePwd} is abnormal. Please submit an issue", $"{ApiConstants.Employee_SelectEmployeeInfoByEmployeeIdAndEmployeePwd}+接口服务异常,请提交issue"), TType.Error); + NotificationService.ShowError(LocalizationHelper.GetLocalizedString($"{ApiConstants.Employee_SelectEmployeeInfoByEmployeeIdAndEmployeePwd} is abnormal. Please submit an issue", $"{ApiConstants.Employee_SelectEmployeeInfoByEmployeeIdAndEmployeePwd}+接口服务异常,请提交issue")); return; } @@ -144,7 +144,7 @@ namespace EOM.TSHotelManagement.FormUI { if (w.IsEnable == 0) { - AntdUI.Modal.open(this, LocalizationHelper.GetLocalizedString("System prompt", "系统提示"), LocalizationHelper.GetLocalizedString("The account has been disabled, please contact your superiors to unblock it!", "账号已禁用,请联系上级解封!"), TType.Error); + NotificationService.ShowError(LocalizationHelper.GetLocalizedString("The account has been disabled, please contact your superiors to unblock it!", "账号已禁用,请联系上级解封!")); return; } @@ -158,9 +158,9 @@ namespace EOM.TSHotelManagement.FormUI if (w.IsInitialize == 0) { - AntdUI.Modal.open(this, LocalizationHelper.GetLocalizedString("System prompt", "系统提示"), LocalizationHelper.GetLocalizedString("The initial password for the current account has not been changed, and it will be directed to the change page later", "当前账号未修改初始密码,稍后将引导至修改页面"), TType.Error); - FrmMySpace frmMySpace = new FrmMySpace(); - frmMySpace.ShowDialog(); + NotificationService.ShowError(LocalizationHelper.GetLocalizedString("The initial password for the current account has not been changed, and it will be directed to the change page later", "当前账号未修改初始密码,稍后将引导至修改页面")); + FrmAccountSecurity frmAccountSecurity = new FrmAccountSecurity(); + frmAccountSecurity.ShowDialog(); } FrmMain frm = new FrmMain(this); @@ -169,7 +169,7 @@ namespace EOM.TSHotelManagement.FormUI } else { - AntdUI.Modal.open(this, LocalizationHelper.GetLocalizedString("System prompt", "系统提示"), LocalizationHelper.GetLocalizedString("Employee number/email or password incorrect", "员工编号/邮箱地址或密码错误!"), TType.Error); + NotificationService.ShowError(LocalizationHelper.GetLocalizedString("Employee number/email or password incorrect", "员工编号/邮箱地址或密码错误!")); txtWorkerPwd.Focus(); } } @@ -177,7 +177,7 @@ namespace EOM.TSHotelManagement.FormUI catch (Exception ex) { RecordHelper.Record(LocalizationHelper.GetLocalizedString($"Login error:{ex.Message}", $"登录异常:{ex.Message}"), Common.Core.LogLevel.Critical); - AntdUI.Modal.open(this, LocalizationHelper.GetLocalizedString("System prompt", "系统提示"), LocalizationHelper.GetLocalizedString("The server is under maintenance, please try again later", "服务器维护中,请稍后再试!"), TType.Error); + NotificationService.ShowError(LocalizationHelper.GetLocalizedString("The server is under maintenance, please try again later", "服务器维护中,请稍后再试!")); } } #endregion diff --git a/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.Designer.cs index 22a3e6a..0fee07c 100644 --- a/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.Designer.cs @@ -30,28 +30,12 @@ { components = new System.ComponentModel.Container(); System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmMain)); - lblTime = new Label(); - tmrDate = new System.Windows.Forms.Timer(components); lblSoftName = new Label(); pnlMID = new Panel(); - notifyIcon1 = new NotifyIcon(components); - cmsMain = new ContextMenuStrip(components); - tsmiChangeUser = new ToolStripMenuItem(); - tsmiMySpace = new ToolStripMenuItem(); - toolStripSeparator3 = new ToolStripSeparator(); - tsmiLockScreen = new ToolStripMenuItem(); - toolStripSeparator4 = new ToolStripSeparator(); - tsmiUpdateLog = new ToolStripMenuItem(); - tsmiHelp = new ToolStripMenuItem(); - tsmiAccessOfficial = new ToolStripMenuItem(); - tsmiAbout = new ToolStripMenuItem(); - tsmiExitSystem = new ToolStripMenuItem(); + niClientIcon = new NotifyIcon(components); linkLabel1 = new LinkLabel(); - lblScroll = new Sunny.UI.UIScrollingText(); tmrFont = new System.Windows.Forms.Timer(components); - label3 = new Label(); - btnHello = new Sunny.UI.UIButton(); - uiButton1 = new Sunny.UI.UIButton(); + lbHello = new Label(); pnlCheckInfo = new Panel(); lblCheckDay = new AntdUI.Label(); lblClose = new Label(); @@ -63,31 +47,12 @@ btnFormSize = new AntdUI.Button(); btnSetting = new AntdUI.Button(); cpUITheme = new AntdUI.ColorPicker(); - cmsMain.SuspendLayout(); + lblScroll = new AntdUI.Label(); + ltNow = new AntdUI.LabelTime(); pnlCheckInfo.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)picLogo).BeginInit(); SuspendLayout(); // - // lblTime - // - lblTime.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right; - lblTime.AutoSize = true; - lblTime.BackColor = Color.Transparent; - lblTime.FlatStyle = FlatStyle.Flat; - lblTime.Font = new Font("Noto Sans SC", 14.2499981F, FontStyle.Regular, GraphicsUnit.Point, 0); - lblTime.Location = new Point(53, 141); - lblTime.Margin = new Padding(4, 0, 4, 0); - lblTime.Name = "lblTime"; - lblTime.Size = new Size(89, 19); - lblTime.TabIndex = 2; - lblTime.Text = "NowTime"; - // - // tmrDate - // - tmrDate.Enabled = true; - tmrDate.Interval = 60000; - tmrDate.Tick += tmrDate_Tick; - // // lblSoftName // lblSoftName.BackColor = Color.Transparent; @@ -111,99 +76,13 @@ pnlMID.Size = new Size(1072, 490); pnlMID.TabIndex = 23; // - // notifyIcon1 - // - notifyIcon1.Icon = (Icon)resources.GetObject("notifyIcon1.Icon"); - notifyIcon1.Text = "TS酒店管理系统"; - notifyIcon1.Visible = true; - notifyIcon1.BalloonTipClosed += notifyIcon1_BalloonTipClosed; - notifyIcon1.MouseDoubleClick += notifyIcon1_MouseDoubleClick; - // - // cmsMain - // - cmsMain.Font = new Font("Microsoft YaHei UI Light", 12F, FontStyle.Italic, GraphicsUnit.Point, 134); - cmsMain.Items.AddRange(new ToolStripItem[] { tsmiChangeUser, tsmiMySpace, toolStripSeparator3, tsmiLockScreen, toolStripSeparator4, tsmiUpdateLog, tsmiHelp, tsmiAbout, tsmiExitSystem }); - cmsMain.Name = "cmsMain"; - cmsMain.RenderMode = ToolStripRenderMode.Professional; - cmsMain.Size = new Size(181, 192); - // - // tsmiChangeUser - // - tsmiChangeUser.Font = new Font("Noto Sans SC", 11.9999981F); - tsmiChangeUser.Image = Properties.Resources.切换账号; - tsmiChangeUser.Name = "tsmiChangeUser"; - tsmiChangeUser.Size = new Size(180, 22); - tsmiChangeUser.Text = "切换用户"; - tsmiChangeUser.Click += tsmiChangeUser_Click; - // - // tsmiMySpace - // - tsmiMySpace.Font = new Font("Noto Sans SC", 11.9999981F); - tsmiMySpace.Image = Properties.Resources.个人中心; - tsmiMySpace.Name = "tsmiMySpace"; - tsmiMySpace.Size = new Size(180, 22); - tsmiMySpace.Text = "个人中心"; - tsmiMySpace.Click += tsmiMySpace_Click; - // - // toolStripSeparator3 - // - toolStripSeparator3.Name = "toolStripSeparator3"; - toolStripSeparator3.Size = new Size(177, 6); - // - // tsmiLockScreen - // - tsmiLockScreen.Font = new Font("Noto Sans SC", 11.9999981F); - tsmiLockScreen.Image = Properties.Resources.锁屏; - tsmiLockScreen.Name = "tsmiLockScreen"; - tsmiLockScreen.Size = new Size(180, 22); - tsmiLockScreen.Text = "系统锁定"; - tsmiLockScreen.Click += tsmiLockScreen_Click; - // - // toolStripSeparator4 - // - toolStripSeparator4.Name = "toolStripSeparator4"; - toolStripSeparator4.Size = new Size(177, 6); - // - // tsmiUpdateLog - // - tsmiUpdateLog.Font = new Font("Noto Sans SC", 11.9999981F); - tsmiUpdateLog.Name = "tsmiUpdateLog"; - tsmiUpdateLog.Size = new Size(180, 22); - tsmiUpdateLog.Text = "查看更新日志"; - tsmiUpdateLog.Click += tsmiUpdateLog_Click; - // - // tsmiHelp + // niClientIcon // - tsmiHelp.DropDownItems.AddRange(new ToolStripItem[] { tsmiAccessOfficial }); - tsmiHelp.Font = new Font("Noto Sans SC", 11.9999981F); - tsmiHelp.Image = Properties.Resources.关于我们; - tsmiHelp.Name = "tsmiHelp"; - tsmiHelp.Size = new Size(180, 22); - tsmiHelp.Text = "帮助"; - // - // tsmiAccessOfficial - // - tsmiAccessOfficial.Name = "tsmiAccessOfficial"; - tsmiAccessOfficial.Size = new Size(180, 22); - tsmiAccessOfficial.Text = "访问官网"; - tsmiAccessOfficial.Click += tsmiAccessOfficial_Click; - // - // tsmiAbout - // - tsmiAbout.Font = new Font("Noto Sans SC", 11.9999981F, FontStyle.Regular, GraphicsUnit.Point, 0); - tsmiAbout.Name = "tsmiAbout"; - tsmiAbout.Size = new Size(180, 22); - tsmiAbout.Text = "关于"; - tsmiAbout.Click += tsmiAbout_Click; - // - // tsmiExitSystem - // - tsmiExitSystem.Font = new Font("Noto Sans SC", 11.9999981F); - tsmiExitSystem.Image = Properties.Resources.注销; - tsmiExitSystem.Name = "tsmiExitSystem"; - tsmiExitSystem.Size = new Size(180, 22); - tsmiExitSystem.Text = "退出系统"; - tsmiExitSystem.Click += tsmiExitSystem_Click; + niClientIcon.Icon = (Icon)resources.GetObject("niClientIcon.Icon"); + niClientIcon.Text = "TS酒店管理系统"; + niClientIcon.Visible = true; + niClientIcon.BalloonTipClosed += niClientIcon_BalloonTipClosed; + niClientIcon.MouseClick += niClientIcon_MouseClick; // // linkLabel1 // @@ -221,82 +100,25 @@ linkLabel1.VisitedLinkColor = Color.Green; linkLabel1.LinkClicked += linkLabel1_LinkClicked; // - // lblScroll - // - lblScroll.Active = true; - lblScroll.FillColor = Color.FromArgb(235, 243, 255); - lblScroll.Font = new Font("微软雅黑", 12F); - lblScroll.Interval = 1000; - lblScroll.Location = new Point(328, 58); - lblScroll.Margin = new Padding(4); - lblScroll.MinimumSize = new Size(1, 1); - lblScroll.Name = "lblScroll"; - lblScroll.Radius = 0; - lblScroll.RectSides = ToolStripStatusLabelBorderSides.None; - lblScroll.ScrollingType = Sunny.UI.UIScrollingText.UIScrollingType.LeftToRight; - lblScroll.Size = new Size(739, 33); - lblScroll.TabIndex = 0; - // // tmrFont // tmrFont.Enabled = true; tmrFont.Interval = 1000; tmrFont.Tick += tmrFont_Tick; // - // label3 - // - label3.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right; - label3.AutoSize = true; - label3.BackColor = Color.Transparent; - label3.FlatStyle = FlatStyle.Flat; - label3.Font = new Font("Noto Sans SC", 14.2499981F, FontStyle.Regular, GraphicsUnit.Point, 0); - label3.Location = new Point(53, 193); - label3.Margin = new Padding(4, 0, 4, 0); - label3.Name = "label3"; - label3.Size = new Size(53, 19); - label3.TabIndex = 30; - label3.Text = "Hello"; - // - // btnHello - // - btnHello.BackColor = Color.Transparent; - btnHello.BackgroundImageLayout = ImageLayout.Zoom; - btnHello.FillColor = Color.Transparent; - btnHello.Font = new Font("微软雅黑", 12F); - btnHello.Location = new Point(5, 183); - btnHello.Margin = new Padding(4); - btnHello.MinimumSize = new Size(1, 1); - btnHello.Name = "btnHello"; - btnHello.Radius = 20; - btnHello.RadiusSides = Sunny.UI.UICornerRadiusSides.None; - btnHello.RectColor = Color.Transparent; - btnHello.RectSides = ToolStripStatusLabelBorderSides.None; - btnHello.Size = new Size(40, 34); - btnHello.Style = Sunny.UI.UIStyle.Custom; - btnHello.StyleCustomMode = true; - btnHello.TabIndex = 33; - btnHello.TipsFont = new Font("宋体", 9F, FontStyle.Regular, GraphicsUnit.Point, 134); - // - // uiButton1 - // - uiButton1.BackColor = Color.Transparent; - uiButton1.BackgroundImage = (Image)resources.GetObject("uiButton1.BackgroundImage"); - uiButton1.BackgroundImageLayout = ImageLayout.Stretch; - uiButton1.FillColor = Color.Transparent; - uiButton1.Font = new Font("微软雅黑", 12F); - uiButton1.Location = new Point(6, 127); - uiButton1.Margin = new Padding(4); - uiButton1.MinimumSize = new Size(1, 1); - uiButton1.Name = "uiButton1"; - uiButton1.Radius = 20; - uiButton1.RadiusSides = Sunny.UI.UICornerRadiusSides.None; - uiButton1.RectColor = Color.Transparent; - uiButton1.RectSides = ToolStripStatusLabelBorderSides.None; - uiButton1.Size = new Size(40, 39); - uiButton1.Style = Sunny.UI.UIStyle.Custom; - uiButton1.StyleCustomMode = true; - uiButton1.TabIndex = 31; - uiButton1.TipsFont = new Font("宋体", 9F, FontStyle.Regular, GraphicsUnit.Point, 134); + // lbHello + // + lbHello.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right; + lbHello.AutoSize = true; + lbHello.BackColor = Color.Transparent; + lbHello.FlatStyle = FlatStyle.Flat; + lbHello.Font = new Font("Noto Sans SC", 14.2499981F, FontStyle.Regular, GraphicsUnit.Point, 0); + lbHello.Location = new Point(5, 198); + lbHello.Margin = new Padding(4, 0, 4, 0); + lbHello.Name = "lbHello"; + lbHello.Size = new Size(53, 19); + lbHello.TabIndex = 30; + lbHello.Text = "Hello"; // // pnlCheckInfo // @@ -370,7 +192,6 @@ picLogo.Size = new Size(165, 111); picLogo.TabIndex = 15; picLogo.TabStop = false; - picLogo.Click += picLogo_Click; // // muNavBar // @@ -417,7 +238,7 @@ btnSetting.Name = "btnSetting"; btnSetting.Size = new Size(41, 38); btnSetting.TabIndex = 42; - btnSetting.Click += btnSetting_Click; + btnSetting.MouseClick += btnSetting_MouseClick; // // cpUITheme // @@ -425,35 +246,51 @@ cpUITheme.Name = "cpUITheme"; cpUITheme.Size = new Size(41, 38); cpUITheme.TabIndex = 43; - cpUITheme.Text = "colorPicker1"; + cpUITheme.Text = "col"; cpUITheme.Value = Color.FromArgb(22, 119, 255); cpUITheme.ValueChanged += cpUITheme_ValueChanged; // + // lblScroll + // + lblScroll.Font = new Font("Noto Sans SC", 11.9999981F, FontStyle.Regular, GraphicsUnit.Point, 0); + lblScroll.Location = new Point(328, 49); + lblScroll.Name = "lblScroll"; + lblScroll.Size = new Size(745, 39); + lblScroll.TabIndex = 44; + lblScroll.Text = ""; + lblScroll.TextAlign = ContentAlignment.MiddleCenter; + // + // ltNow + // + ltNow.AutoWidth = true; + ltNow.Font = new Font("Noto Sans SC", 9F, FontStyle.Regular, GraphicsUnit.Point, 0); + ltNow.Location = new Point(5, 142); + ltNow.Name = "ltNow"; + ltNow.Size = new Size(127, 35); + ltNow.TabIndex = 45; + // // FrmMain // AutoScaleDimensions = new SizeF(7F, 17F); AutoScaleMode = AutoScaleMode.Font; AutoValidate = AutoValidate.Disable; BackColor = Color.FromArgb(235, 243, 255); - BackgroundImageLayout = ImageLayout.Stretch; CausesValidation = false; ClientSize = new Size(1080, 721); - Controls.Add(cpUITheme); + Controls.Add(ltNow); Controls.Add(lblScroll); + Controls.Add(cpUITheme); Controls.Add(btnSetting); Controls.Add(btnClose); Controls.Add(btnFormSize); Controls.Add(muNavBar); - Controls.Add(btnHello); - Controls.Add(uiButton1); - Controls.Add(label3); + Controls.Add(lbHello); Controls.Add(pnlCheckInfo); Controls.Add(linkLabel1); Controls.Add(pnlMID); Controls.Add(picLogo); Controls.Add(lblSoftName); - Controls.Add(lblTime); - FormBorderStyle = FormBorderStyle.None; + FormBorderStyle = FormBorderStyle.FixedSingle; Icon = (Icon)resources.GetObject("$this.Icon"); Margin = new Padding(4); Name = "FrmMain"; @@ -462,9 +299,8 @@ FormClosing += FrmMain_FormClosing; FormClosed += FrmMain_FormClosed; Load += FrmMain_Load; - MouseDown += FrmMain_MouseDown_1; - MouseMove += FrmMain_MouseMove_1; - cmsMain.ResumeLayout(false); + MouseDown += FrmMain_MouseDown; + MouseMove += FrmMain_MouseMove; pnlCheckInfo.ResumeLayout(false); pnlCheckInfo.PerformLayout(); ((System.ComponentModel.ISupportInitialize)picLogo).EndInit(); @@ -473,40 +309,25 @@ } #endregion - private System.Windows.Forms.Label lblTime; - private System.Windows.Forms.Timer tmrDate; private System.Windows.Forms.Label lblSoftName; private System.Windows.Forms.PictureBox picLogo; private System.Windows.Forms.Panel pnlMID; - private System.Windows.Forms.ToolStripMenuItem tsmiChangeUser; - private System.Windows.Forms.ToolStripMenuItem tsmiLockScreen; private System.Windows.Forms.ToolStripMenuItem tsmiCheckUpdate; - private System.Windows.Forms.ToolStripMenuItem tsmiExitSystem; - private System.Windows.Forms.ToolStripMenuItem tsmiHelp; private System.Windows.Forms.LinkLabel linkLabel1; private System.Windows.Forms.Panel pnlCheckInfo; private System.Windows.Forms.Label label4; private System.Windows.Forms.Label label2; private System.Windows.Forms.Label lblClose; - public System.Windows.Forms.NotifyIcon notifyIcon1; - public System.Windows.Forms.ContextMenuStrip cmsMain; + public System.Windows.Forms.NotifyIcon niClientIcon; private System.Windows.Forms.Timer tmrFont; - private Sunny.UI.UIScrollingText lblScroll; - private System.Windows.Forms.Label label3; - private Sunny.UI.UIButton uiButton1; - private Sunny.UI.UIButton btnHello; - private System.Windows.Forms.ToolStripMenuItem tsmiMySpace; - private System.Windows.Forms.ToolStripSeparator toolStripSeparator3; - private System.Windows.Forms.ToolStripSeparator toolStripSeparator4; - private Sunny.UI.UIButton picSetting; + private System.Windows.Forms.Label lbHello; private AntdUI.Menu muNavBar; private AntdUI.Button btnClose; private AntdUI.Button btnFormSize; private AntdUI.Button btnSetting; private AntdUI.ColorPicker cpUITheme; - private ToolStripMenuItem tsmiUpdateLog; private AntdUI.Label lblCheckDay; - private ToolStripMenuItem tsmiAccessOfficial; - private ToolStripMenuItem tsmiAbout; + private AntdUI.Label lblScroll; + private AntdUI.LabelTime ltNow; } } \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.cs b/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.cs index bfa5daa..dd44e0b 100644 --- a/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.cs +++ b/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.cs @@ -23,6 +23,7 @@ */ using AntdUI; +using AntdUI.Svg; using EOM.TSHotelManagement.Common; using EOM.TSHotelManagement.Common.Contract; using EOM.TSHotelManagement.Common.Util; @@ -78,31 +79,24 @@ namespace EOM.TSHotelManagement.FormUI public void StopUseExit() { - notifyIcon1.Visible = false; - tsmiExitSystem.Enabled = false; + niClientIcon.Visible = false; } public void StartUseExit() { - notifyIcon1.Visible = true; - tsmiExitSystem.Enabled = true; + niClientIcon.Visible = true; } public static string wk_WorkerName; public static string wk_WorkerNames; - - #region 窗体渐变相关代码 - private bool showing = true; - #endregion - #region 记录鼠标和窗体坐标的方法 private Point mouseOld;//鼠标旧坐标 private Point formOld;//窗体旧坐标 #endregion #region 记录移动的窗体坐标 - private void FrmMain_MouseDown_1(object sender, MouseEventArgs e) + private void FrmMain_MouseDown(object sender, MouseEventArgs e) { formOld = this.Location; mouseOld = MousePosition; @@ -110,7 +104,7 @@ namespace EOM.TSHotelManagement.FormUI #endregion #region 记录窗体移动的坐标 - private void FrmMain_MouseMove_1(object sender, MouseEventArgs e) + private void FrmMain_MouseMove(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Left) { @@ -122,31 +116,6 @@ namespace EOM.TSHotelManagement.FormUI } #endregion - #region 定时器:获取网络时间 - private void tmrDate_Tick(object sender, EventArgs e) - { - lblTime.Text = Convert.ToDateTime(DateTime.Now).ToString("yyyy-MM-dd HH:mm"); - - DateTime tmCur = Convert.ToDateTime(DateTime.Now); - - if (tmCur.Hour < 8 || tmCur.Hour > 18) - {//晚上 - label3.Text = "(*´▽`)ノノ晚上好," + LoginInfo.WorkerName; - btnHello.BackgroundImage = Resources.月亮; - } - else if (tmCur.Hour > 8 && tmCur.Hour < 12) - {//上午 - label3.Text = "上午好," + LoginInfo.WorkerName; - btnHello.BackgroundImage = Resources.早上; - } - else - {//下午 - label3.Text = "下午好," + LoginInfo.WorkerName; - btnHello.BackgroundImage = Resources.咖啡; - } - } - #endregion - ListOutputDto fonts = null; int fontn = 0; private void LoadFonts() @@ -154,7 +123,7 @@ namespace EOM.TSHotelManagement.FormUI #region 从数据库读取文字滚动的内容 result = HttpHelper.Request(ApiConstants.PromotionContent_SelectPromotionContents); var response = HttpHelper.JsonToModel>(result.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { fonts = null; } @@ -184,7 +153,7 @@ namespace EOM.TSHotelManagement.FormUI { System.Windows.Forms.Application.Exit(); - notifyIcon1.Dispose(); + niClientIcon.Dispose(); } #endregion @@ -204,7 +173,7 @@ namespace EOM.TSHotelManagement.FormUI #region 菜单导航代码块 result = HttpHelper.Request(ApiConstants.NavBar_NavBarList); var response = HttpHelper.JsonToModel>(result.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { AntdUI.Message.error(this, "服务器维护中,请过会再试"); listData = null; @@ -244,6 +213,23 @@ namespace EOM.TSHotelManagement.FormUI #endregion } + AntdUI.IContextMenuStripItem[] menulist = new AntdUI.IContextMenuStripItem[] + { + new AntdUI.ContextMenuStripItem(UIControlConstant.ChangeAccount).SetIcon(UIControlIconConstant.ChangeAccount), + new AntdUI.ContextMenuStripItem(UIControlConstant.PersonnalCenter).SetIcon(UIControlIconConstant.PersonnalCenter).SetSub( + new AntdUI.ContextMenuStripItem(UIControlConstant.PersonnalInformation).SetIcon(UIControlIconConstant.PersonnalInformation), + new AntdUI.ContextMenuStripItem(UIControlConstant.AccountSecurity).SetIcon(UIControlIconConstant.AccountSecurity), + new AntdUI.ContextMenuStripItem(UIControlConstant.AccountAvator).SetIcon(UIControlIconConstant.AccountAvator) + ), + new AntdUI.ContextMenuStripItem(UIControlConstant.SystemLock).SetIcon(UIControlIconConstant.SystemLock), + new AntdUI.ContextMenuStripItem(UIControlConstant.UpdateLog).SetIcon(UIControlIconConstant.Log), + new AntdUI.ContextMenuStripItem(UIControlConstant.Help).SetIcon(UIControlIconConstant.Help).SetSub( + new AntdUI.ContextMenuStripItem(UIControlConstant.VisitOfficial).SetIcon(UIControlIconConstant.Internet) + ), + new AntdUI.ContextMenuStripItem(UIControlConstant.About).SetIcon(UIControlIconConstant.About), + new AntdUI.ContextMenuStripItem(UIControlConstant.ExitSystem).SetIcon(UIControlIconConstant.Exit) + }; + #region 窗体加载事件方法 private void FrmMain_Load(object sender, EventArgs e) { @@ -251,35 +237,30 @@ namespace EOM.TSHotelManagement.FormUI lblSoftName.Text = System.Windows.Forms.Application.ProductName.ToString() + " V" + ApplicationUtil.GetApplicationVersion(); - tmrDate.Enabled = true; - LoadNavBar(); LoadFonts(); - lblTime.Text = Convert.ToDateTime(DateTime.Now).ToString("yyyy-MM-dd HH:mm"); + DateTime tmCur = DateTime.Now; - DateTime tmCur = Convert.ToDateTime(DateTime.Now); + int currentHour = tmCur.Hour; if (tmCur.Hour < 8 || tmCur.Hour > 18) { - label3.Text = "(*´▽`)ノノ晚上好 " + LoginInfo.WorkerName; - btnHello.BackgroundImage = Resources.月亮; + lbHello.Text = "(*´▽`)ノノ晚上好 " + LoginInfo.WorkerName; } else if (tmCur.Hour > 8 && tmCur.Hour < 12) { - label3.Text = "(*´▽`)ノノ上午好 " + LoginInfo.WorkerName; - btnHello.BackgroundImage = Resources.早上; + lbHello.Text = "(*´▽`)ノノ上午好 " + LoginInfo.WorkerName; } else { - label3.Text = "(*´▽`)ノノ下午好 " + LoginInfo.WorkerName; - btnHello.BackgroundImage = Resources.咖啡; + lbHello.Text = "(*´▽`)ノノ下午好 " + LoginInfo.WorkerName; } pnlCheckInfo.Visible = false; - notifyIcon1.Text = "TS酒店管理系统-" + LoginInfo.WorkerName + "-版本号:" + ApplicationUtil.GetApplicationVersion(); + niClientIcon.Text = "TS酒店管理系统 - " + LoginInfo.WorkerName + " - 版本号:" + ApplicationUtil.GetApplicationVersion(); wk_WorkerName = LoginInfo.WorkerName; FrmRoomManager frmRoomManager = new FrmRoomManager @@ -289,55 +270,101 @@ namespace EOM.TSHotelManagement.FormUI pnlMID.Controls.Add(frmRoomManager); frmRoomManager.Show(); - checkEmployeeCheckInfo(); - } - #endregion + Dictionary user = new Dictionary() + { + { nameof(ReadEmployeeCheckInputDto.EmployeeId), LoginInfo.WorkerNo} + }; - #region 调用系统锁屏方法 - private void tsmiLockScreen_Click(object sender, EventArgs e) - { - var lockForm = new FrmScreenLock(); - lockForm.ShowDialog(); - } - #endregion + var result = HttpHelper.Request(ApiConstants.EmployeeCheck_SelectToDayCheckInfoByWorkerNo, user); + var response = HttpHelper.JsonToModel>(result.message); - #region 检查软件更新版本事件方法 - private void tsmiCheckUpdate_Click(object sender, EventArgs e) - { - } - #endregion + if (response.Success == false) + { + AntdUI.Notification.open(new AntdUI.Notification.Config(this, UIMessageConstant.Error, $"打卡接口:{ApiConstants.EmployeeCheck_SelectToDayCheckInfoByWorkerNo}异常:{response.Message}", AntdUI.TType.Error, AntdUI.TAlignFrom.TR, Font) + { + Radius = 10, + FontStyleTitle = FontStyle.Bold, + ShowInWindow = true + }); + return; + } - #region 切换用户事件方法 - private void tsmiChangeUser_Click(object sender, EventArgs e) - { - this.Close(); - } - #endregion + bool isMorningShift = currentHour < 12; - #region 退出酒店管理系统事件方法 - private void tsmiExitSystem_Click(object sender, EventArgs e) - { - System.Windows.Forms.Application.Exit(); + bool shouldHaveChecked = isMorningShift ? response.Data.MorningChecked : response.Data.EveningChecked; + string shiftName = isMorningShift ? "早班" : "晚班"; + + linkLabel1.Text = shouldHaveChecked ? $"{shiftName}已打卡" : $"{shiftName}未打卡"; + linkLabel1.ForeColor = shouldHaveChecked ? Color.Green : Color.Red; + linkLabel1.LinkColor = shouldHaveChecked ? Color.Green : Color.Red; + + lblCheckDay.Text = Convert.ToString(response.Data.CheckDay); + pnlCheckInfo.Visible = true; } #endregion - #region 关于我们选项的事件方法 - private void tsmiAboutUs_Click(object sender, EventArgs e) + private void LeftKey(AntdUI.ContextMenuStripItem it) { + switch (it.Text) + { + case UIControlConstant.ChangeAccount: + var dr = AntdUI.Modal.open(new AntdUI.Modal.Config(this, UIMessageConstant.Warning, LocalizationHelper.GetLocalizedString("Are you sure you want to switch accounts?", "你确定要切换账号吗?"), AntdUI.TType.Warn) + { + CancelText = LocalizationHelper.GetLocalizedString(UIMessageConstant.Eng_Cancel, UIMessageConstant.Chs_Cancel), + OkText = LocalizationHelper.GetLocalizedString(UIMessageConstant.Eng_Yes, UIMessageConstant.Chs_Yes) + }); + if (dr == DialogResult.OK) + { + this.Close(); + } + break; + case UIControlConstant.SystemLock: + FrmScreenLock frmScreenLock = new(); + frmScreenLock.ShowDialog(); + break; + case UIControlConstant.UpdateLog: + AntdUI.Modal.open(this, LocalizationHelper.GetLocalizedString("Update log", "更新日志"), LoginInfo.SoftwareReleaseLog, TType.Info); + break; + case UIControlConstant.About: + FrmAbout frmAbout = new(); + frmAbout.ShowDialog(); + break; + case UIControlConstant.ExitSystem: + System.Windows.Forms.Application.Exit(); + break; + case UIControlConstant.VisitOfficial: + Process.Start(new ProcessStartInfo + { + FileName = "https://www.oscode.top", + UseShellExecute = true + }); + break; + case UIControlConstant.PersonnalInformation: + FrmPersonnelInfo frmPersonnelInfo = new(); + frmPersonnelInfo.ShowDialog(); + break; + case UIControlConstant.AccountSecurity: + FrmAccountSecurity frmAccountSecurity = new(); + frmAccountSecurity.ShowDialog(); + break; + case UIControlConstant.AccountAvator: + FrmAvator frmAvator = new(); + frmAvator.ShowDialog(); + break; + } } - #endregion #region 当窗体关闭后的事件方法 private void FrmMain_FormClosed(object sender, FormClosedEventArgs e) { - notifyIcon1.Dispose(); + niClientIcon.Dispose(); } #endregion private void FrmMain_FormClosing(object sender, FormClosingEventArgs e) { - notifyIcon1.Dispose(); + niClientIcon.Dispose(); this.returnForm1.Visible = true; } @@ -356,13 +383,13 @@ namespace EOM.TSHotelManagement.FormUI var result = HttpHelper.Request(ApiConstants.EmployeeCheck_SelectToDayCheckInfoByWorkerNo, user); var response = HttpHelper.JsonToModel>(result.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { - AntdUI.Modal.open(this, UIMessageConstant.Error, $"打卡接口:{ApiConstants.EmployeeCheck_SelectToDayCheckInfoByWorkerNo}异常:{response.Message}"); + NotificationService.ShowError($"打卡接口:{ApiConstants.EmployeeCheck_SelectToDayCheckInfoByWorkerNo}异常:{response.Message}"); return; } - var tmCur = DateTime.Today; + var tmCur = DateTime.Now; int currentHour = tmCur.Hour; bool isMorningShift = currentHour < 12; @@ -396,21 +423,21 @@ namespace EOM.TSHotelManagement.FormUI result = HttpHelper.Request(ApiConstants.EmployeeCheck_AddCheckInfo, workerCheck.ModelToJson()); var checkResult = HttpHelper.JsonToModel(result.message); - if (checkResult.Code != BusinessStatusCode.Success) + if (checkResult.Success == false) { - AntdUI.Modal.open(this, UIMessageConstant.Error, $"打卡接口{ApiConstants.EmployeeCheck_AddCheckInfo}异常:{checkResult.Message}"); + NotificationService.ShowError($"打卡接口{ApiConstants.EmployeeCheck_AddCheckInfo}异常:{checkResult.Message}"); return; } result = HttpHelper.Request(ApiConstants.EmployeeCheck_SelectWorkerCheckDaySumByEmployeeId, user); response = HttpHelper.JsonToModel>(result.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { - AntdUI.Modal.open(this, UIMessageConstant.Error, $"打卡天数接口{ApiConstants.EmployeeCheck_SelectWorkerCheckDaySumByEmployeeId}异常:{response.Message}"); + NotificationService.ShowError($"打卡天数接口{ApiConstants.EmployeeCheck_SelectWorkerCheckDaySumByEmployeeId}异常:{response.Message}"); return; } - AntdUI.Modal.open(this, UIMessageConstant.Success, $"{shiftName}打卡成功!你已共打卡" + lblCheckDay.Text + "天"); + NotificationService.ShowSuccess($"{shiftName}打卡成功!你已共打卡" + lblCheckDay.Text + "天"); linkLabel1.Text = $"{shiftName}已打卡"; linkLabel1.ForeColor = Color.Green; linkLabel1.LinkColor = Color.Green; @@ -419,6 +446,8 @@ namespace EOM.TSHotelManagement.FormUI lblCheckDay.Text = Convert.ToString(response.Data.CheckDay); pnlCheckInfo.Visible = true; + lblCheckDay.Refresh(); + this.Refresh(); } private void lblClose_Click(object sender, EventArgs e) @@ -426,41 +455,14 @@ namespace EOM.TSHotelManagement.FormUI pnlCheckInfo.Visible = false; } - private void notifyIcon1_MouseDoubleClick(object sender, MouseEventArgs e) - { - - } - - private void tsmiMySpace_Click(object sender, EventArgs e) - { - FrmMySpace frmMySpace = new FrmMySpace(); - frmMySpace.Text = LoginInfo.WorkerName + "的个人中心"; - frmMySpace.Show(); - } - public void CloseMine() { this.Close(); } - private void picLogo_Click(object sender, EventArgs e) - { - } - - private void tsmiLoginBackSystem_Click(object sender, EventArgs e) - { - - - } - - private void btnSetting_Click(object sender, EventArgs e) - { - cmsMain.Show(Cursor.Position); - } - - private void notifyIcon1_BalloonTipClosed(object sender, EventArgs e) + private void niClientIcon_BalloonTipClosed(object sender, EventArgs e) { - notifyIcon1.Dispose(); + niClientIcon.Dispose(); } private void cpUITheme_ValueChanged(object sender, ColorEventArgs e) @@ -504,24 +506,24 @@ namespace EOM.TSHotelManagement.FormUI } - private void tsmiUpdateLog_Click(object sender, EventArgs e) - { - AntdUI.Modal.open(this, LocalizationHelper.GetLocalizedString("Update log", "更新日志"), LoginInfo.SoftwareReleaseLog, TType.Info); - } - - private void tsmiAccessOfficial_Click(object sender, EventArgs e) + private void btnSetting_MouseClick(object sender, MouseEventArgs e) { - Process.Start(new ProcessStartInfo + if (e.Button == MouseButtons.Left) { - FileName = "https://www.oscode.top", - UseShellExecute = true - }); + AntdUI.ContextMenuStrip.Config config = new AntdUI.ContextMenuStrip.Config(this, LeftKey, menulist); + config.Font = new Font("Noto Sans SC", 9f, FontStyle.Bold); + AntdUI.ContextMenuStrip.open(config); + } } - private void tsmiAbout_Click(object sender, EventArgs e) + private void niClientIcon_MouseClick(object sender, MouseEventArgs e) { - FrmAbout frmAbout = new FrmAbout(); - frmAbout.ShowDialog(); + if (e.Button == MouseButtons.Right) + { + AntdUI.ContextMenuStrip.Config config = new AntdUI.ContextMenuStrip.Config(this, LeftKey, menulist); + config.Font = new Font("Noto Sans SC", 9f, FontStyle.Bold); + AntdUI.ContextMenuStrip.open(config); + } } } } diff --git a/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.resx b/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.resx index 4ac33fd..1b7491f 100644 --- a/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.resx +++ b/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.resx @@ -117,14 +117,11 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - 17, 17 - - - 206, 17 + + 114, 16 - + AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA @@ -148,27 +145,9 @@ AAD//wAA//8AAA== - - 324, 17 - - 111, 17 + 19, 16 - - - iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAjdJREFUWEft - lr1qG0EQx/0ASWfdXko/gB8hEFAXV25SGVKkSiEXTuWkSN4lGOTZReAncGv8BsZGnDRbhOQhEv57X7Nz - H9oTKfWDgWP/s3OzK93MHB0dODCBGf1+NbPbt8bywji+MZY3wcrnBTT46H3/hcxuv2SW2Vj+O2bwga/e - vzeGihND/KhfBMuJn2B6PRj2UHGi400is/xdB85uNz9yKs7M6ldW++EZa9D6/OOoieT0PIuCOX7Jb/m9 - 9tPAB75yL2Jpv50Y55djp8gtvzOW72F41np0e84vtT5K5vhCnOBB66BKoDxhTwIAe5tDOL7Qei/Hd39e - G8vrJgHiU+0DkhIgPhUHWSO29ulgrJ+PXX1NSgIg/mP6udY7GOuvmwSIz7Vek5wA8blI4FrrHYzlVb3h - +GfxRus1qQkgRpsAr7TewVj2wdnxi9YkUQLOf9C6RHyWXmsdqvoeqpzWJDKBYMSftE+NqJYbrXWoGksZ - VFS7PnK3+Rgl4fhS+yCG0G+03iF0uvpqqTjTuiYj/zlKwm6/Sj2U7VZfSK2Xqt2GDWOfoSQjfzW0R1ZE - xJZaL+jnsu2m1H9gyH/Dy+Ra6At1YpY5eVZAP2+ubcfXMIZsSpNnBDkD6GtNIWpGxI9a30kYRNo/D+xh - qC9IqvrfNKEygT0Hk6EBA+VVVkk8Y23IP446kTCYiNkgMvzGavhoNb/caxAZopoR2jY9bOvk3j+VclZA - uw4dE00LfQO2Ktf8PKnnHzgg+AcOWrMEs2MtNAAAAABJRU5ErkJggg== - - iVBORw0KGgoAAAANSUhEUgAAAPoAAACtCAYAAACZZ2JyAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAbout.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAbout.Designer.cs index e48e409..8021d11 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAbout.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAbout.Designer.cs @@ -74,7 +74,7 @@ lblServerVersion.Font = new Font("Noto Sans SC", 9F); lblServerVersion.Location = new Point(194, 287); lblServerVersion.Name = "lblServerVersion"; - lblServerVersion.Size = new Size(103, 23); + lblServerVersion.Size = new Size(183, 23); lblServerVersion.TabIndex = 48; lblServerVersion.Text = ""; // @@ -84,7 +84,7 @@ lblClientVersion.Font = new Font("Noto Sans SC", 9F); lblClientVersion.Location = new Point(194, 258); lblClientVersion.Name = "lblClientVersion"; - lblClientVersion.Size = new Size(103, 23); + lblClientVersion.Size = new Size(183, 23); lblClientVersion.TabIndex = 47; lblClientVersion.Text = ""; // @@ -92,9 +92,9 @@ // lblServerVersionDescriotion.BackColor = Color.Transparent; lblServerVersionDescriotion.Font = new Font("Noto Sans SC", 9F); - lblServerVersionDescriotion.Location = new Point(94, 287); + lblServerVersionDescriotion.Location = new Point(13, 287); lblServerVersionDescriotion.Name = "lblServerVersionDescriotion"; - lblServerVersionDescriotion.Size = new Size(90, 23); + lblServerVersionDescriotion.Size = new Size(171, 23); lblServerVersionDescriotion.TabIndex = 46; lblServerVersionDescriotion.Text = ""; lblServerVersionDescriotion.TextAlign = ContentAlignment.MiddleRight; @@ -103,9 +103,9 @@ // lblClientVersionDescriotion.BackColor = Color.Transparent; lblClientVersionDescriotion.Font = new Font("Noto Sans SC", 9F); - lblClientVersionDescriotion.Location = new Point(94, 258); + lblClientVersionDescriotion.Location = new Point(13, 258); lblClientVersionDescriotion.Name = "lblClientVersionDescriotion"; - lblClientVersionDescriotion.Size = new Size(90, 23); + lblClientVersionDescriotion.Size = new Size(171, 23); lblClientVersionDescriotion.TabIndex = 45; lblClientVersionDescriotion.Text = ""; lblClientVersionDescriotion.TextAlign = ContentAlignment.MiddleRight; @@ -114,9 +114,9 @@ // lblCopyright.BackColor = Color.Transparent; lblCopyright.Font = new Font("Noto Sans SC", 9F); - lblCopyright.Location = new Point(71, 346); + lblCopyright.Location = new Point(13, 346); lblCopyright.Name = "lblCopyright"; - lblCopyright.Size = new Size(240, 23); + lblCopyright.Size = new Size(364, 23); lblCopyright.TabIndex = 49; lblCopyright.Text = ""; lblCopyright.TextAlign = ContentAlignment.MiddleCenter; @@ -125,9 +125,9 @@ // lblNotice.BackColor = Color.Transparent; lblNotice.Font = new Font("Noto Sans SC", 9F); - lblNotice.Location = new Point(71, 375); + lblNotice.Location = new Point(13, 375); lblNotice.Name = "lblNotice"; - lblNotice.Size = new Size(240, 23); + lblNotice.Size = new Size(364, 23); lblNotice.TabIndex = 50; lblNotice.Text = ""; lblNotice.TextAlign = ContentAlignment.MiddleCenter; @@ -138,7 +138,7 @@ lblFrameworkVersion.Font = new Font("Noto Sans SC", 9F); lblFrameworkVersion.Location = new Point(194, 316); lblFrameworkVersion.Name = "lblFrameworkVersion"; - lblFrameworkVersion.Size = new Size(103, 23); + lblFrameworkVersion.Size = new Size(183, 23); lblFrameworkVersion.TabIndex = 52; lblFrameworkVersion.Text = ""; // @@ -146,9 +146,9 @@ // lblFrameworkVersionDescription.BackColor = Color.Transparent; lblFrameworkVersionDescription.Font = new Font("Noto Sans SC", 9F); - lblFrameworkVersionDescription.Location = new Point(94, 316); + lblFrameworkVersionDescription.Location = new Point(13, 316); lblFrameworkVersionDescription.Name = "lblFrameworkVersionDescription"; - lblFrameworkVersionDescription.Size = new Size(90, 23); + lblFrameworkVersionDescription.Size = new Size(171, 23); lblFrameworkVersionDescription.TabIndex = 51; lblFrameworkVersionDescription.Text = ""; lblFrameworkVersionDescription.TextAlign = ContentAlignment.MiddleRight; @@ -177,10 +177,11 @@ Controls.Add(lblClientVersionDescriotion); Controls.Add(lblSoftName); Controls.Add(picLogo); - FormBorderStyle = FormBorderStyle.FixedSingle; + FormBorderStyle = FormBorderStyle.None; Icon = (Icon)resources.GetObject("$this.Icon"); Margin = new Padding(2); Name = "FrmAbout"; + Resizable = false; StartPosition = FormStartPosition.CenterScreen; Text = "关于我们"; Load += FrmAboutUs_Load; diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAbout.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAbout.cs index b84b793..15f2df0 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAbout.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAbout.cs @@ -34,7 +34,7 @@ namespace EOM.TSHotelManagement.FormUI { InitializeComponent(); - whAboutHeader = new ucWindowHeader("关于", string.Empty, (Image)resources.GetObject("FrmAbout.Icon")!); + whAboutHeader.ApplySettingsWithoutMinimize("关于", string.Empty, (Image)resources.GetObject("FrmAbout.Icon")!); } #region 记录鼠标和窗体坐标的方法 diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.Designer.cs index 3fd014b..007824e 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.Designer.cs @@ -36,13 +36,14 @@ avatar1 = new AntdUI.Avatar(); btnUpdatePassword = new AntdUI.Button(); txtNewPassword = new AntdUI.Input(); + ucWindowHeader1 = new ucWindowHeader(); SuspendLayout(); // // avatar3 // avatar3.Image = (Image)resources.GetObject("avatar3.Image"); avatar3.ImageFit = AntdUI.TFit.None; - avatar3.Location = new Point(260, 156); + avatar3.Location = new Point(16, 135); avatar3.Name = "avatar3"; avatar3.Size = new Size(45, 43); avatar3.TabIndex = 54; @@ -52,7 +53,7 @@ // txtOldPassword.BackColor = Color.White; txtOldPassword.Font = new Font("Microsoft YaHei UI", 14F); - txtOldPassword.Location = new Point(303, 153); + txtOldPassword.Location = new Point(59, 132); txtOldPassword.Name = "txtOldPassword"; txtOldPassword.PasswordChar = '*'; txtOldPassword.PasswordCopy = true; @@ -63,7 +64,7 @@ // // lblEmployeeId // - lblEmployeeId.Location = new Point(303, 83); + lblEmployeeId.Location = new Point(59, 62); lblEmployeeId.Name = "lblEmployeeId"; lblEmployeeId.Size = new Size(238, 43); lblEmployeeId.TabIndex = 52; @@ -74,7 +75,7 @@ // avatar2.Image = (Image)resources.GetObject("avatar2.Image"); avatar2.ImageFit = AntdUI.TFit.None; - avatar2.Location = new Point(260, 236); + avatar2.Location = new Point(16, 215); avatar2.Name = "avatar2"; avatar2.Size = new Size(45, 43); avatar2.TabIndex = 51; @@ -84,7 +85,7 @@ // avatar1.Image = (Image)resources.GetObject("avatar1.Image"); avatar1.ImageFit = AntdUI.TFit.None; - avatar1.Location = new Point(260, 83); + avatar1.Location = new Point(16, 62); avatar1.Name = "avatar1"; avatar1.Size = new Size(45, 43); avatar1.TabIndex = 50; @@ -93,9 +94,9 @@ // btnUpdatePassword // btnUpdatePassword.Font = new Font("Microsoft YaHei UI", 12F); - btnUpdatePassword.Location = new Point(313, 310); + btnUpdatePassword.Location = new Point(76, 289); btnUpdatePassword.Name = "btnUpdatePassword"; - btnUpdatePassword.Size = new Size(191, 57); + btnUpdatePassword.Size = new Size(161, 51); btnUpdatePassword.TabIndex = 49; btnUpdatePassword.Text = "修改密码"; btnUpdatePassword.Type = AntdUI.TTypeMini.Primary; @@ -105,7 +106,7 @@ // txtNewPassword.BackColor = Color.White; txtNewPassword.Font = new Font("Microsoft YaHei UI", 14F); - txtNewPassword.Location = new Point(303, 232); + txtNewPassword.Location = new Point(59, 211); txtNewPassword.Name = "txtNewPassword"; txtNewPassword.PasswordChar = '*'; txtNewPassword.PasswordCopy = true; @@ -114,12 +115,20 @@ txtNewPassword.Size = new Size(238, 52); txtNewPassword.TabIndex = 48; // + // ucWindowHeader1 + // + ucWindowHeader1.Location = new Point(-1, -1); + ucWindowHeader1.Name = "ucWindowHeader1"; + ucWindowHeader1.Size = new Size(313, 33); + ucWindowHeader1.TabIndex = 55; + // // FrmAccountSecurity // AutoScaleDimensions = new SizeF(7F, 17F); AutoScaleMode = AutoScaleMode.Font; BackColor = Color.FromArgb(235, 243, 255); - ClientSize = new Size(800, 450); + ClientSize = new Size(312, 353); + Controls.Add(ucWindowHeader1); Controls.Add(avatar3); Controls.Add(txtOldPassword); Controls.Add(lblEmployeeId); @@ -127,7 +136,9 @@ Controls.Add(avatar1); Controls.Add(btnUpdatePassword); Controls.Add(txtNewPassword); + Icon = (Icon)resources.GetObject("$this.Icon"); Name = "FrmAccountSecurity"; + StartPosition = FormStartPosition.CenterScreen; Text = "FrmAccountSecurity"; Load += FrmAccountSecurity_Load; ResumeLayout(false); @@ -142,5 +153,6 @@ private AntdUI.Avatar avatar1; private AntdUI.Button btnUpdatePassword; private AntdUI.Input txtNewPassword; + private ucWindowHeader ucWindowHeader1; } } \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.cs index 7e99d73..ed1e0a5 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.cs @@ -17,9 +17,12 @@ namespace EOM.TSHotelManagement.FormUI { public partial class FrmAccountSecurity : Window { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmAccountSecurity)); public FrmAccountSecurity() { InitializeComponent(); + + ucWindowHeader1.ApplySettingsWithoutMinimize("账号安全", string.Empty, (Image)resources.GetObject("FrmAccountSecurity.Icon")!); } private void FrmAccountSecurity_Load(object sender, EventArgs e) @@ -33,7 +36,7 @@ namespace EOM.TSHotelManagement.FormUI { if (string.IsNullOrEmpty(txtOldPassword.Text) || string.IsNullOrEmpty(txtNewPassword.Text)) { - AntdUI.Modal.open(this, LocalizationHelper.GetLocalizedString("System prompt", "系统提示"), LocalizationHelper.GetLocalizedString("Please input new password or old password", "请输入旧密码或新密码"), TType.Error); + NotificationService.ShowWarning(LocalizationHelper.GetLocalizedString("Please input new password or old password", "请输入旧密码或新密码")); return; } @@ -47,12 +50,12 @@ namespace EOM.TSHotelManagement.FormUI }; var request = HttpHelper.Request(ApiConstants.Employee_UpdateEmployeeAccountPassword, employee.ModelToJson()); var response = HttpHelper.JsonToModel(request.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { - AntdUI.Modal.open(this, LocalizationHelper.GetLocalizedString("System prompt", "系统提示"), LocalizationHelper.GetLocalizedString($"{ApiConstants.Employee_UpdateEmployeeAccountPassword}+Interface service exception, please submit an issue or try updating the version!", $"{ApiConstants.Employee_UpdateEmployeeAccountPassword}+接口服务异常,请提交Issue或尝试更新版本!")); + NotificationService.ShowError(LocalizationHelper.GetLocalizedString($"{ApiConstants.Employee_UpdateEmployeeAccountPassword}+Interface service exception, please submit an issue or try updating the version!", $"{ApiConstants.Employee_UpdateEmployeeAccountPassword}+接口服务异常,请提交Issue或尝试更新版本!")); return; } - AntdUI.Modal.open(this, LocalizationHelper.GetLocalizedString("System prompt", "系统提示"), LocalizationHelper.GetLocalizedString("Update password success", "更新密码成功"), TType.Success); + NotificationService.ShowSuccess(LocalizationHelper.GetLocalizedString("Update password success", "更新密码成功")); return; } } diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.resx index 08486f8..cce1d4a 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.resx +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.resx @@ -152,6 +152,28 @@ ivqwm18XF3jfCjH3AKT9XqAJvdp+KpRjOkODps+W5DGxEXwGmAgLVjYwGs9FAnc+04r22zfYkozmQUi5 xXvuRzEwItabwAePdynpHPcB8qJTwb03DbsOvCYi6yiN0CMgFfoo8A0oVr4MECuyfObb5h7B06B1jluJ /9mCF6O2DoI8pZh/BT7YtDNBRUB7wBLKQa18NUbTzr+Cko/f/wBMTh9auuIjhwAAAABJRU5ErkJggg== + + + + + AAABAAEAICAAAAEAGAASBAAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAgAAAAIAgGAAAAc3p69AAAAAFz + UkdCAK7OHOkAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA7DAAAOwwHHb6hkAAADp0lEQVRYR7WXWYhP + URzHx5pliGEkSyhJeCCJZHsgpSxZx5pkT0h2CYkHpQYJKeRBliyFEoMiWVIj2bLmwYOdeCDM+HzP/c5/ + TPP3n/u/xrc+nXN+27n/+7/3nHNz4qqkpKQrTIYNcBwOwurS0tJxkOuw/yMmGgsPmSit8N2CPg6vXlF4 + IXN88kQ3oBAKYA7swnzbvg8w1WnVIwqOhMfwFpYwTxO7Kgjfcl+E7lJ7m/9NKkTB/fAN5tmcVvjrw274 + CtttTi4mr02hKfAOTkEXu/4qYtrAK3gBBTYnEwXyYQs8gfE2ZxRxjWErvId1NicTBTqBXrVr0N/mjOKu + 1SN2JvyEQzYnEwX6QDHo9neyOaO4gJrE9qXVw3gZ2tmVvUjuBXq3z0MPmzOKeesQO9IXUASt7MpeJHeD + c3AHhtmcUcQ1ZO6VvoAzUN+u7EVya9gJeguWxinGvM2JOw16FQttTi6KaPnV6vYcRtucVkyu2z/fv/4Z + jLEruagVFiIXvQK97aokQgY57iPNepv/XRTU23DZxV/DNrr9oJ79w2GP/BL94pBYnaLoANAd+OV5NNFT + +AwlHv+AY3Rr0HaEjTDBJXSHujNeDAPoh4uPJYKbkDQD7tP/q/B/oRkMs+k/sO0BTKTbk/asba9p1tPm + eYr0IiCfQBW76cTvoGX5JKyDYTAa1uI+SqsluFCxcUSs7lAjT1dR+PXwHY5CQ/B1GAENHVJJhGnzKogy + qhaxu2kqb+0YW8IBB2lXWwVt7c4oUtorL46ouYimgVMjYdD/rROOAh7TjLOrShFbVxer3DIxfgl7QQua + 6qXE+AQ0c3qqwAo7tafPtatKEatnoli5ZWJ8laazQxSjrfpI5I3EuIhmegigkwu3MWrlWxOMMaVif4r8 + tAcSbGGDc1hKZU69atrHr0J+MMaU66RE/l2annanhF3HtjNRVLnKnBfpf6JdHAxZKCpTLmroYDrI7pSw + t4DzUVS55BiiDq02nQ6Ojy1y7oVKFuM3sMzulHCNwl7h20JjFVgAWmg2OTYrkZcHkyCsdhJ9TTTKIYrR + V5UeuiD6OkFPhTw5d8BX7JVuWzYiv8I6QE0d5x/BXdf/U1q2a4VEnDp2fQyDhFIxagwPpWOI2Ak0dUMy + g5eRObH0+uoB074QS8RuhmgvoPPC9sSiRg/oAJdskk3rgf7rbRB2SIm+zosD6dYJF0BH/51ONImgWOqr + iXEu42lwAVbYrB85FPbBLGKa2oxycn4DnUXgUUEkWqsAAAAASUVORK5CYII= \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.Designer.cs index 10536a1..6662b63 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.Designer.cs @@ -28,9 +28,11 @@ /// private void InitializeComponent() { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmAvator)); label4 = new AntdUI.Label(); picWorkerPic = new PictureBox(); openPic = new OpenFileDialog(); + ucWindowHeader1 = new ucWindowHeader(); ((System.ComponentModel.ISupportInitialize)picWorkerPic).BeginInit(); SuspendLayout(); // @@ -61,15 +63,25 @@ openPic.Filter = "PNG文件|*.png|JPG文件|*.jpg|位图文件|*.bmp"; openPic.FileOk += openPic_FileOk; // + // ucWindowHeader1 + // + ucWindowHeader1.Location = new Point(-2, 0); + ucWindowHeader1.Name = "ucWindowHeader1"; + ucWindowHeader1.Size = new Size(804, 35); + ucWindowHeader1.TabIndex = 4; + // // FrmAvator // AutoScaleDimensions = new SizeF(7F, 17F); AutoScaleMode = AutoScaleMode.Font; BackColor = Color.FromArgb(235, 243, 255); ClientSize = new Size(800, 450); + Controls.Add(ucWindowHeader1); Controls.Add(label4); Controls.Add(picWorkerPic); + Icon = (Icon)resources.GetObject("$this.Icon"); Name = "FrmAvator"; + StartPosition = FormStartPosition.CenterScreen; Text = "FrmAvator"; Load += FrmAvator_Load; ((System.ComponentModel.ISupportInitialize)picWorkerPic).EndInit(); @@ -81,5 +93,6 @@ private AntdUI.Label label4; private PictureBox picWorkerPic; private OpenFileDialog openPic; + private ucWindowHeader ucWindowHeader1; } } \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.cs index 27cf5fa..bed532f 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.cs @@ -1,8 +1,8 @@ using AntdUI; using EOM.TSHotelManagement.Common; using EOM.TSHotelManagement.Common.Contract; +using EOM.TSHotelManagement.FormUI.Properties; using jvncorelib.EntityLib; -using Sunny.UI; using System; using System.Collections.Generic; using System.ComponentModel; @@ -17,14 +17,33 @@ namespace EOM.TSHotelManagement.FormUI { public partial class FrmAvator : Window { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmAvator)); public FrmAvator() { InitializeComponent(); + + ucWindowHeader1.ApplySettingsWithoutMinimize("账号头像", string.Empty, (Image)resources.GetObject("FrmAvator.Icon")!); } private void FrmAvator_Load(object sender, EventArgs e) { - + var dic = new Dictionary + { + { nameof(ReadEmployeePhotoInputDto.EmployeeId) , LoginInfo.WorkerNo } + }; + result = HttpHelper.Request(ApiConstants.EmployeePhoto_EmployeePhoto, dic); + var workerPic = HttpHelper.JsonToModel>(result.message); + if (workerPic.Success == false) + { + NotificationService.ShowError($"{ApiConstants.EmployeePhoto_EmployeePhoto}+接口服务异常,请提交Issue或尝试更新版本!"); + return; + } + var workerPicData = workerPic.Data; + if (workerPicData != null && !string.IsNullOrEmpty(workerPicData.PhotoPath)) + { + picWorkerPic.BackgroundImage = null; + if (!string.IsNullOrEmpty(workerPicData.PhotoPath)) picWorkerPic.Load(workerPicData.PhotoPath); + } } @@ -42,12 +61,12 @@ namespace EOM.TSHotelManagement.FormUI }; var requestResult = HttpHelper.UploadFile(ApiConstants.EmployeePhoto_InsertWorkerPhoto, openPic.FileName, additionalParams); var response = HttpHelper.JsonToModel>(requestResult.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { - UIMessageBox.ShowError($"{response.Message}:{ApiConstants.EmployeePhoto_InsertWorkerPhoto}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{response.Message}:{ApiConstants.EmployeePhoto_InsertWorkerPhoto}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - UIMessageTip.ShowOk("头像上传成功!稍等将会加载头像哦.."); + NotificationService.ShowSuccess("头像上传成功!稍等将会加载头像哦.."); picWorkerPic.Load(response.Data.PhotoPath); } @@ -65,9 +84,9 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.EmployeePhoto_EmployeePhoto, dic); var workerPic = HttpHelper.JsonToModel>(result.message); - if (workerPic.Code != BusinessStatusCode.Success) + if (workerPic.Success == false) { - UIMessageBox.ShowError($"{ApiConstants.EmployeePhoto_EmployeePhoto}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.EmployeePhoto_EmployeePhoto}+接口服务异常,请提交Issue或尝试更新版本!"); return; } var workerPicData = workerPic.Data; @@ -75,9 +94,9 @@ namespace EOM.TSHotelManagement.FormUI { result = HttpHelper.Request(ApiConstants.EmployeePhoto_DeleteWorkerPhoto, workerPic.ModelToJson()); var response = HttpHelper.JsonToModel(result.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { - UIMessageBox.ShowError($"{ApiConstants.EmployeePhoto_DeleteWorkerPhoto}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.EmployeePhoto_DeleteWorkerPhoto}+接口服务异常,请提交Issue或尝试更新版本!"); return; } PicHandler(); diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.resx index 7862d4f..2b65bdb 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.resx +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.resx @@ -120,4 +120,27 @@ 17, 17 + + + + AAABAAEAICAAAAEAGAASBAAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAgAAAAIAgGAAAAc3p69AAAAAFz + UkdCAK7OHOkAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA7DAAAOwwHHb6hkAAADp0lEQVRYR7WXWYhP + URzHx5pliGEkSyhJeCCJZHsgpSxZx5pkT0h2CYkHpQYJKeRBliyFEoMiWVIj2bLmwYOdeCDM+HzP/c5/ + TPP3n/u/xrc+nXN+27n/+7/3nHNz4qqkpKQrTIYNcBwOwurS0tJxkOuw/yMmGgsPmSit8N2CPg6vXlF4 + IXN88kQ3oBAKYA7swnzbvg8w1WnVIwqOhMfwFpYwTxO7Kgjfcl+E7lJ7m/9NKkTB/fAN5tmcVvjrw274 + CtttTi4mr02hKfAOTkEXu/4qYtrAK3gBBTYnEwXyYQs8gfE2ZxRxjWErvId1NicTBTqBXrVr0N/mjOKu + 1SN2JvyEQzYnEwX6QDHo9neyOaO4gJrE9qXVw3gZ2tmVvUjuBXq3z0MPmzOKeesQO9IXUASt7MpeJHeD + c3AHhtmcUcQ1ZO6VvoAzUN+u7EVya9gJeguWxinGvM2JOw16FQttTi6KaPnV6vYcRtucVkyu2z/fv/4Z + jLEruagVFiIXvQK97aokQgY57iPNepv/XRTU23DZxV/DNrr9oJ79w2GP/BL94pBYnaLoANAd+OV5NNFT + +AwlHv+AY3Rr0HaEjTDBJXSHujNeDAPoh4uPJYKbkDQD7tP/q/B/oRkMs+k/sO0BTKTbk/asba9p1tPm + eYr0IiCfQBW76cTvoGX5JKyDYTAa1uI+SqsluFCxcUSs7lAjT1dR+PXwHY5CQ/B1GAENHVJJhGnzKogy + qhaxu2kqb+0YW8IBB2lXWwVt7c4oUtorL46ouYimgVMjYdD/rROOAh7TjLOrShFbVxer3DIxfgl7QQua + 6qXE+AQ0c3qqwAo7tafPtatKEatnoli5ZWJ8laazQxSjrfpI5I3EuIhmegigkwu3MWrlWxOMMaVif4r8 + tAcSbGGDc1hKZU69atrHr0J+MMaU66RE/l2annanhF3HtjNRVLnKnBfpf6JdHAxZKCpTLmroYDrI7pSw + t4DzUVS55BiiDq02nQ6Ojy1y7oVKFuM3sMzulHCNwl7h20JjFVgAWmg2OTYrkZcHkyCsdhJ9TTTKIYrR + V5UeuiD6OkFPhTw5d8BX7JVuWzYiv8I6QE0d5x/BXdf/U1q2a4VEnDp2fQyDhFIxagwPpWOI2Ak0dUMy + g5eRObH0+uoB074QS8RuhmgvoPPC9sSiRg/oAJdskk3rgf7rbRB2SIm+zosD6dYJF0BH/51ONImgWOqr + iXEu42lwAVbYrB85FPbBLGKa2oxycn4DnUXgUUEkWqsAAAAASUVORK5CYII= + + \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.Designer.cs index 68f6f74..d704775 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.Designer.cs @@ -29,106 +29,105 @@ private void InitializeComponent() { System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmChangeRoom)); - this.uiLabel1 = new Sunny.UI.UILabel(); - this.cboRoomList = new Sunny.UI.UIComboBox(); - this.uiLabel2 = new Sunny.UI.UILabel(); - this.lblRoomType = new Sunny.UI.UILabel(); - this.btnChangeRoom = new Sunny.UI.UIButton(); - this.SuspendLayout(); + ucWindowHeader1 = new ucWindowHeader(); + label24 = new Label(); + label1 = new Label(); + lblRoomType = new AntdUI.Label(); + btnChangeRoom = new AntdUI.Button(); + cboRoomList = new AntdUI.Select(); + SuspendLayout(); // - // uiLabel1 + // ucWindowHeader1 // - this.uiLabel1.Font = new System.Drawing.Font("微软雅黑", 12F); - this.uiLabel1.Location = new System.Drawing.Point(15, 54); - this.uiLabel1.Name = "uiLabel1"; - this.uiLabel1.Size = new System.Drawing.Size(202, 28); - this.uiLabel1.Style = Sunny.UI.UIStyle.Custom; - this.uiLabel1.TabIndex = 6; - this.uiLabel1.Text = "请选择需要转换的新房间:"; - this.uiLabel1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + ucWindowHeader1.Location = new Point(0, -1); + ucWindowHeader1.Name = "ucWindowHeader1"; + ucWindowHeader1.Size = new Size(249, 35); + ucWindowHeader1.TabIndex = 11; // - // cboRoomList + // label24 // - this.cboRoomList.DataSource = null; - this.cboRoomList.FillColor = System.Drawing.Color.White; - this.cboRoomList.Font = new System.Drawing.Font("微软雅黑", 12F); - this.cboRoomList.Location = new System.Drawing.Point(208, 55); - this.cboRoomList.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); - this.cboRoomList.MinimumSize = new System.Drawing.Size(63, 0); - this.cboRoomList.Name = "cboRoomList"; - this.cboRoomList.Padding = new System.Windows.Forms.Padding(0, 0, 30, 2); - this.cboRoomList.Radius = 15; - this.cboRoomList.Size = new System.Drawing.Size(150, 29); - this.cboRoomList.Style = Sunny.UI.UIStyle.Custom; - this.cboRoomList.TabIndex = 7; - this.cboRoomList.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft; - this.cboRoomList.TextChanged += new System.EventHandler(this.cboRoomList_TextChanged); + label24.AutoSize = true; + label24.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); + label24.Location = new Point(12, 53); + label24.Name = "label24"; + label24.Size = new Size(88, 25); + label24.TabIndex = 159; + label24.Text = "新房间:"; // - // uiLabel2 + // label1 // - this.uiLabel2.Font = new System.Drawing.Font("微软雅黑", 12F); - this.uiLabel2.Location = new System.Drawing.Point(15, 96); - this.uiLabel2.Name = "uiLabel2"; - this.uiLabel2.Size = new System.Drawing.Size(183, 28); - this.uiLabel2.Style = Sunny.UI.UIStyle.Custom; - this.uiLabel2.TabIndex = 8; - this.uiLabel2.Text = "新 房 间 类 型 为:"; - this.uiLabel2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + label1.AutoSize = true; + label1.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); + label1.Location = new Point(12, 103); + label1.Name = "label1"; + label1.Size = new Size(87, 25); + label1.TabIndex = 161; + label1.Text = "类 型:"; // // lblRoomType // - this.lblRoomType.Font = new System.Drawing.Font("微软雅黑", 12F); - this.lblRoomType.Location = new System.Drawing.Point(208, 96); - this.lblRoomType.Name = "lblRoomType"; - this.lblRoomType.Size = new System.Drawing.Size(150, 28); - this.lblRoomType.Style = Sunny.UI.UIStyle.Custom; - this.lblRoomType.TabIndex = 9; - this.lblRoomType.Text = "新 房 间 类 型"; - this.lblRoomType.TextAlign = System.Drawing.ContentAlignment.MiddleLeft; + lblRoomType.Location = new Point(91, 97); + lblRoomType.Name = "lblRoomType"; + lblRoomType.Size = new Size(149, 40); + lblRoomType.TabIndex = 162; + lblRoomType.Text = ""; + lblRoomType.TextAlign = ContentAlignment.MiddleCenter; // // btnChangeRoom // - this.btnChangeRoom.Cursor = System.Windows.Forms.Cursors.Hand; - this.btnChangeRoom.Font = new System.Drawing.Font("微软雅黑", 12F); - this.btnChangeRoom.Location = new System.Drawing.Point(133, 138); - this.btnChangeRoom.MinimumSize = new System.Drawing.Size(1, 1); - this.btnChangeRoom.Name = "btnChangeRoom"; - this.btnChangeRoom.Radius = 15; - this.btnChangeRoom.Size = new System.Drawing.Size(107, 40); - this.btnChangeRoom.Style = Sunny.UI.UIStyle.Custom; - this.btnChangeRoom.TabIndex = 10; - this.btnChangeRoom.Text = "转 房"; - this.btnChangeRoom.Click += new System.EventHandler(this.btnChangeRoom_Click); + btnChangeRoom.Font = new Font("Noto Sans SC", 11.9999981F, FontStyle.Regular, GraphicsUnit.Point, 0); + btnChangeRoom.Location = new Point(155, 156); + btnChangeRoom.Name = "btnChangeRoom"; + btnChangeRoom.Size = new Size(85, 45); + btnChangeRoom.TabIndex = 163; + btnChangeRoom.Text = "转 房"; + btnChangeRoom.Type = AntdUI.TTypeMini.Primary; + btnChangeRoom.Click += btnChangeRoom_Click; + // + // cboRoomList + // + cboRoomList.Font = new Font("Noto Sans SC", 12F); + cboRoomList.List = true; + cboRoomList.ListAutoWidth = true; + cboRoomList.Location = new Point(91, 46); + cboRoomList.Name = "cboRoomList"; + cboRoomList.Placement = AntdUI.TAlignFrom.Bottom; + cboRoomList.Size = new Size(149, 45); + cboRoomList.TabIndex = 179; + cboRoomList.TextChanged += cboRoomList_TextChanged; // // FrmChangeRoom // - this.AutoScaleDimensions = new System.Drawing.SizeF(10F, 21F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(235)))), ((int)(((byte)(243)))), ((int)(((byte)(255))))); - this.ClientSize = new System.Drawing.Size(372, 198); - this.Controls.Add(this.btnChangeRoom); - this.Controls.Add(this.lblRoomType); - this.Controls.Add(this.uiLabel2); - this.Controls.Add(this.cboRoomList); - this.Controls.Add(this.uiLabel1); - this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); - this.MaximizeBox = false; - this.MinimizeBox = false; - this.Name = "FrmChangeRoom"; - this.ShowIcon = true; - this.ShowTitleIcon = true; - this.Style = Sunny.UI.UIStyle.Custom; - this.Text = "转换房间"; - this.Load += new System.EventHandler(this.FrmChangeRoom_Load); - this.ResumeLayout(false); + AutoScaleDimensions = new SizeF(7F, 17F); + AutoScaleMode = AutoScaleMode.Font; + BackColor = Color.FromArgb(235, 243, 255); + ClientSize = new Size(248, 210); + Controls.Add(cboRoomList); + Controls.Add(btnChangeRoom); + Controls.Add(lblRoomType); + Controls.Add(label1); + Controls.Add(label24); + Controls.Add(ucWindowHeader1); + FormBorderStyle = FormBorderStyle.FixedSingle; + Icon = (Icon)resources.GetObject("$this.Icon"); + Margin = new Padding(2); + MaximizeBox = false; + MinimizeBox = false; + Name = "FrmChangeRoom"; + StartPosition = FormStartPosition.CenterScreen; + Text = "转换房间"; + Load += FrmChangeRoom_Load; + ResumeLayout(false); + PerformLayout(); } #endregion - private Sunny.UI.UILabel uiLabel1; - private Sunny.UI.UIComboBox cboRoomList; - private Sunny.UI.UILabel uiLabel2; - private Sunny.UI.UILabel lblRoomType; - private Sunny.UI.UIButton btnChangeRoom; + private ucWindowHeader ucWindowHeader1; + private Label label24; + private Label label1; + private AntdUI.Label lblRoomType; + private AntdUI.Button btnChangeRoom; + private AntdUI.Select cboRoomList; } } \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.cs index 706b527..9f2d889 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.cs @@ -22,18 +22,21 @@ * */ +using AntdUI; using EOM.TSHotelManagement.Common; using EOM.TSHotelManagement.Common.Contract; using jvncorelib.EntityLib; -using Sunny.UI; namespace EOM.TSHotelManagement.FormUI { - public partial class FrmChangeRoom : UIForm + public partial class FrmChangeRoom : Window { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmChangeRoom)); public FrmChangeRoom() { InitializeComponent(); + + ucWindowHeader1.ApplySettingsWithoutMinimize("转换房间", string.Empty, (Image)resources.GetObject("FrmChangeRoom.Icon")!); } ResponseMsg result = null; @@ -43,14 +46,12 @@ namespace EOM.TSHotelManagement.FormUI { result = HttpHelper.Request(ApiConstants.Room_SelectCanUseRoomAll); var datas = HttpHelper.JsonToModel>(result.message); - if (datas.Success) + if (!datas.Success) { - UIMessageBox.ShowError($"{ApiConstants.Room_SelectCanUseRoomAll}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Room_SelectCanUseRoomAll}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - cboRoomList.DataSource = datas.Data.Items; - cboRoomList.DisplayMember = nameof(ReadRoomOutputDto.RoomNumber); - cboRoomList.ValueMember = nameof(ReadRoomOutputDto.RoomNumber); + this.cboRoomList.Items.AddRange(datas.Data.Items.Select(item => new AntdUI.SelectItem(item.RoomNumber, item.RoomNumber)).ToArray()); } private void btnChangeRoom_Click(object sender, EventArgs e) @@ -72,9 +73,9 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Room_TransferRoom, transferRoom.ModelToJson()); var response = HttpHelper.JsonToModel(result.message!); - if (response.Code != BusinessStatusCode.Success) + if (!response.Success) { - UIMessageBox.ShowError($"{ApiConstants.Room_TransferRoom}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Room_TransferRoom}+接口服务异常,请提交Issue或尝试更新版本!"); return; } @@ -85,12 +86,12 @@ namespace EOM.TSHotelManagement.FormUI #region 获取添加操作日志所需的信息 RecordHelper.Record(LoginInfo.WorkerNo + "-" + LoginInfo.WorkerName + "在" + transferRoom.DataChgDate + "位于" + LoginInfo.SoftwareVersion + "执行:" + transferRoom.CustomerNumber + "于" + transferRoom.DataChgDate + "进行了换房!", Common.Core.LogLevel.Warning); #endregion - UIMessageBox.ShowSuccess("转房成功"); + NotificationService.ShowSuccess("转房成功"); this.Close(); } catch (Exception) { - UIMessageBox.ShowError("转房失败"); + NotificationService.ShowError("转房失败"); } } @@ -109,9 +110,9 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.RoomType_SelectRoomTypeByRoomNo, dic); var data = HttpHelper.JsonToModel>(result.message); - if (data.Code != BusinessStatusCode.Success) + if (data.Success == false) { - UIMessageBox.ShowError($"{ApiConstants.RoomType_SelectRoomTypeByRoomNo}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.RoomType_SelectRoomTypeByRoomNo}+接口服务异常,请提交Issue或尝试更新版本!"); return; } var roomType = data.Data; diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.resx index 211ed09..1437888 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.resx +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.resx @@ -1,17 +1,17 @@  - diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckIn.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckIn.Designer.cs index 6ece672..317434d 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckIn.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckIn.Designer.cs @@ -29,243 +29,89 @@ private void InitializeComponent() { System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmCheckIn)); - txtRoomPosition = new Sunny.UI.UITextBox(); label3 = new Label(); - txtType = new Sunny.UI.UIComboBox(); - txtRoomNo = new Sunny.UI.UITextBox(); - txtState = new Sunny.UI.UITextBox(); - txtMoney = new Sunny.UI.UITextBox(); label13 = new Label(); label15 = new Label(); label19 = new Label(); label20 = new Label(); - txtCustoNo = new Sunny.UI.UITextBox(); - txtCustoName = new Sunny.UI.UITextBox(); label18 = new Label(); label16 = new Label(); - txtCustoTel = new Sunny.UI.UITextBox(); label14 = new Label(); - txtCustoType = new Sunny.UI.UITextBox(); label12 = new Label(); - txtDeposit = new Sunny.UI.UITextBox(); label1 = new Label(); - pnlBtm.SuspendLayout(); + ucWindowHeader1 = new ucWindowHeader(); + btnCheckIn = new AntdUI.Button(); + btnCancel = new AntdUI.Button(); + txtRoomNo = new AntdUI.Input(); + txtState = new AntdUI.Input(); + txtRoomPosition = new AntdUI.Input(); + txtRent = new AntdUI.Input(); + txtDeposit = new AntdUI.Input(); + txtCustomerName = new AntdUI.Input(); + txtCustomerLevel = new AntdUI.Input(); + txtCustomerTel = new AntdUI.Input(); + txtCustomerNo = new AntdUI.Input(); + txtRoomType = new AntdUI.Input(); SuspendLayout(); // - // pnlBtm - // - pnlBtm.Location = new Point(1, 328); - pnlBtm.Size = new Size(859, 53); - pnlBtm.Style = Sunny.UI.UIStyle.Custom; - // - // btnCancel - // - btnCancel.Location = new Point(731, 12); - btnCancel.Style = Sunny.UI.UIStyle.Custom; - // - // btnOK - // - btnOK.Location = new Point(616, 12); - btnOK.Style = Sunny.UI.UIStyle.Custom; - // - // txtRoomPosition - // - txtRoomPosition.Cursor = Cursors.IBeam; - txtRoomPosition.Font = new Font("微软雅黑", 15.75F, FontStyle.Regular, GraphicsUnit.Point, 134); - txtRoomPosition.Location = new Point(170, 163); - txtRoomPosition.Margin = new Padding(4, 5, 4, 5); - txtRoomPosition.MinimumSize = new Size(1, 1); - txtRoomPosition.Name = "txtRoomPosition"; - txtRoomPosition.Padding = new Padding(5); - txtRoomPosition.Radius = 20; - txtRoomPosition.ReadOnly = true; - txtRoomPosition.ShowText = false; - txtRoomPosition.Size = new Size(251, 35); - txtRoomPosition.Style = Sunny.UI.UIStyle.Custom; - txtRoomPosition.StyleCustomMode = true; - txtRoomPosition.TabIndex = 150; - txtRoomPosition.TextAlignment = ContentAlignment.MiddleLeft; - txtRoomPosition.Watermark = ""; - // // label3 // label3.AutoSize = true; - label3.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label3.Location = new Point(63, 168); + label3.Font = new Font("Noto Sans SC", 14.2499981F); + label3.Location = new Point(8, 169); label3.Name = "label3"; - label3.Size = new Size(88, 25); + label3.Size = new Size(85, 19); label3.TabIndex = 149; label3.Text = "房间位置"; // - // txtType - // - txtType.DataSource = null; - txtType.DropDownStyle = Sunny.UI.UIDropDownStyle.DropDownList; - txtType.FillColor = Color.White; - txtType.Font = new Font("微软雅黑", 15.75F); - txtType.ItemHoverColor = Color.FromArgb(155, 200, 255); - txtType.ItemSelectForeColor = Color.FromArgb(235, 243, 255); - txtType.Location = new Point(547, 55); - txtType.Margin = new Padding(4, 5, 4, 5); - txtType.MinimumSize = new Size(63, 0); - txtType.Name = "txtType"; - txtType.Padding = new Padding(0, 0, 30, 2); - txtType.Radius = 20; - txtType.ReadOnly = true; - txtType.Size = new Size(250, 35); - txtType.Style = Sunny.UI.UIStyle.Custom; - txtType.SymbolSize = 24; - txtType.TabIndex = 148; - txtType.TextAlignment = ContentAlignment.MiddleLeft; - txtType.Watermark = ""; - // - // txtRoomNo - // - txtRoomNo.Cursor = Cursors.IBeam; - txtRoomNo.Font = new Font("微软雅黑", 15.75F, FontStyle.Regular, GraphicsUnit.Point, 134); - txtRoomNo.Location = new Point(171, 55); - txtRoomNo.Margin = new Padding(4, 5, 4, 5); - txtRoomNo.MinimumSize = new Size(1, 1); - txtRoomNo.Name = "txtRoomNo"; - txtRoomNo.Padding = new Padding(5); - txtRoomNo.Radius = 20; - txtRoomNo.ReadOnly = true; - txtRoomNo.ShowText = false; - txtRoomNo.Size = new Size(250, 35); - txtRoomNo.Style = Sunny.UI.UIStyle.Custom; - txtRoomNo.StyleCustomMode = true; - txtRoomNo.TabIndex = 147; - txtRoomNo.TextAlignment = ContentAlignment.MiddleLeft; - txtRoomNo.Watermark = ""; - // - // txtState - // - txtState.Cursor = Cursors.IBeam; - txtState.Font = new Font("微软雅黑", 15.75F, FontStyle.Regular, GraphicsUnit.Point, 134); - txtState.Location = new Point(171, 110); - txtState.Margin = new Padding(4, 5, 4, 5); - txtState.MinimumSize = new Size(1, 1); - txtState.Name = "txtState"; - txtState.Padding = new Padding(5); - txtState.Radius = 20; - txtState.ReadOnly = true; - txtState.ShowText = false; - txtState.Size = new Size(250, 35); - txtState.Style = Sunny.UI.UIStyle.Custom; - txtState.StyleCustomMode = true; - txtState.TabIndex = 146; - txtState.TextAlignment = ContentAlignment.MiddleLeft; - txtState.Watermark = ""; - // - // txtMoney - // - txtMoney.Cursor = Cursors.IBeam; - txtMoney.Font = new Font("微软雅黑", 15.75F, FontStyle.Regular, GraphicsUnit.Point, 134); - txtMoney.Location = new Point(547, 111); - txtMoney.Margin = new Padding(4, 5, 4, 5); - txtMoney.MinimumSize = new Size(1, 1); - txtMoney.Name = "txtMoney"; - txtMoney.Padding = new Padding(5); - txtMoney.Radius = 20; - txtMoney.ReadOnly = true; - txtMoney.ShowText = false; - txtMoney.Size = new Size(250, 35); - txtMoney.Style = Sunny.UI.UIStyle.Custom; - txtMoney.StyleCustomMode = true; - txtMoney.TabIndex = 145; - txtMoney.TextAlignment = ContentAlignment.MiddleLeft; - txtMoney.Watermark = ""; - // // label13 // label13.AutoSize = true; - label13.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label13.Location = new Point(443, 114); + label13.Font = new Font("Noto Sans SC", 14.2499981F); + label13.Location = new Point(387, 117); label13.Name = "label13"; - label13.Size = new Size(88, 25); + label13.Size = new Size(85, 19); label13.TabIndex = 144; label13.Text = "房间单价"; // // label15 // label15.AutoSize = true; - label15.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label15.Location = new Point(443, 62); + label15.Font = new Font("Noto Sans SC", 14.2499981F); + label15.Location = new Point(387, 64); label15.Name = "label15"; - label15.Size = new Size(88, 25); + label15.Size = new Size(85, 19); label15.TabIndex = 143; label15.Text = "房间类型"; // // label19 // label19.AutoSize = true; - label19.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label19.Location = new Point(64, 114); + label19.Font = new Font("Noto Sans SC", 14.2499981F); + label19.Location = new Point(9, 117); label19.Name = "label19"; - label19.Size = new Size(88, 25); + label19.Size = new Size(85, 19); label19.TabIndex = 142; label19.Text = "房间状态"; // // label20 // label20.AutoSize = true; - label20.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label20.Location = new Point(64, 62); + label20.Font = new Font("Noto Sans SC", 14.2499981F); + label20.Location = new Point(9, 64); label20.Name = "label20"; - label20.Size = new Size(88, 25); + label20.Size = new Size(85, 19); label20.TabIndex = 141; label20.Text = "房间编号"; // - // txtCustoNo - // - txtCustoNo.AutoCompleteMode = AutoCompleteMode.Suggest; - txtCustoNo.AutoCompleteSource = AutoCompleteSource.CustomSource; - txtCustoNo.BackColor = Color.Transparent; - txtCustoNo.Cursor = Cursors.IBeam; - txtCustoNo.Font = new Font("微软雅黑", 15.75F, FontStyle.Regular, GraphicsUnit.Point, 134); - txtCustoNo.Location = new Point(170, 218); - txtCustoNo.Margin = new Padding(4, 5, 4, 5); - txtCustoNo.MinimumSize = new Size(1, 1); - txtCustoNo.Name = "txtCustoNo"; - txtCustoNo.Padding = new Padding(5); - txtCustoNo.Radius = 20; - txtCustoNo.ShowText = false; - txtCustoNo.Size = new Size(250, 35); - txtCustoNo.Style = Sunny.UI.UIStyle.Custom; - txtCustoNo.StyleCustomMode = true; - txtCustoNo.TabIndex = 143; - txtCustoNo.TextAlignment = ContentAlignment.MiddleLeft; - txtCustoNo.Watermark = ""; - txtCustoNo.Validated += txtCustoNo_Validated; - // - // txtCustoName - // - txtCustoName.BackColor = Color.Transparent; - txtCustoName.Cursor = Cursors.IBeam; - txtCustoName.Font = new Font("微软雅黑", 15.75F, FontStyle.Regular, GraphicsUnit.Point, 134); - txtCustoName.Location = new Point(546, 218); - txtCustoName.Margin = new Padding(4, 5, 4, 5); - txtCustoName.MinimumSize = new Size(1, 1); - txtCustoName.Name = "txtCustoName"; - txtCustoName.Padding = new Padding(5); - txtCustoName.Radius = 20; - txtCustoName.ReadOnly = true; - txtCustoName.ShowText = false; - txtCustoName.Size = new Size(250, 35); - txtCustoName.Style = Sunny.UI.UIStyle.Custom; - txtCustoName.StyleCustomMode = true; - txtCustoName.TabIndex = 144; - txtCustoName.TextAlignment = ContentAlignment.MiddleLeft; - txtCustoName.Watermark = ""; - // // label18 // label18.AutoSize = true; label18.BackColor = Color.Transparent; - label18.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label18.Location = new Point(63, 225); + label18.Font = new Font("Noto Sans SC", 14.2499981F); + label18.Location = new Point(8, 222); label18.Name = "label18"; - label18.Size = new Size(88, 25); + label18.Size = new Size(85, 19); label18.TabIndex = 137; label18.Text = "客户编号"; // @@ -273,188 +119,228 @@ // label16.AutoSize = true; label16.BackColor = Color.Transparent; - label16.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label16.Location = new Point(63, 277); + label16.Font = new Font("Noto Sans SC", 14.2499981F); + label16.Location = new Point(8, 275); label16.Name = "label16"; - label16.Size = new Size(88, 25); + label16.Size = new Size(85, 19); label16.TabIndex = 138; label16.Text = "客户电话"; // - // txtCustoTel - // - txtCustoTel.BackColor = Color.Transparent; - txtCustoTel.Cursor = Cursors.IBeam; - txtCustoTel.Font = new Font("微软雅黑", 15.75F, FontStyle.Regular, GraphicsUnit.Point, 134); - txtCustoTel.Location = new Point(170, 273); - txtCustoTel.Margin = new Padding(4, 5, 4, 5); - txtCustoTel.MinimumSize = new Size(1, 1); - txtCustoTel.Name = "txtCustoTel"; - txtCustoTel.Padding = new Padding(5); - txtCustoTel.Radius = 20; - txtCustoTel.ReadOnly = true; - txtCustoTel.ShowText = false; - txtCustoTel.Size = new Size(250, 35); - txtCustoTel.Style = Sunny.UI.UIStyle.Custom; - txtCustoTel.StyleCustomMode = true; - txtCustoTel.TabIndex = 142; - txtCustoTel.TextAlignment = ContentAlignment.MiddleLeft; - txtCustoTel.Watermark = ""; - // // label14 // label14.AutoSize = true; label14.BackColor = Color.Transparent; - label14.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label14.Location = new Point(442, 225); + label14.Font = new Font("Noto Sans SC", 14.2499981F); + label14.Location = new Point(387, 222); label14.Name = "label14"; - label14.Size = new Size(88, 25); + label14.Size = new Size(85, 19); label14.TabIndex = 139; label14.Text = "客户姓名"; // - // txtCustoType - // - txtCustoType.BackColor = Color.Transparent; - txtCustoType.Cursor = Cursors.IBeam; - txtCustoType.Font = new Font("微软雅黑", 15.75F, FontStyle.Regular, GraphicsUnit.Point, 134); - txtCustoType.Location = new Point(546, 274); - txtCustoType.Margin = new Padding(4, 5, 4, 5); - txtCustoType.MinimumSize = new Size(1, 1); - txtCustoType.Name = "txtCustoType"; - txtCustoType.Padding = new Padding(5); - txtCustoType.Radius = 20; - txtCustoType.ReadOnly = true; - txtCustoType.ShowText = false; - txtCustoType.Size = new Size(250, 35); - txtCustoType.Style = Sunny.UI.UIStyle.Custom; - txtCustoType.StyleCustomMode = true; - txtCustoType.TabIndex = 141; - txtCustoType.TextAlignment = ContentAlignment.MiddleLeft; - txtCustoType.Watermark = ""; - // // label12 // label12.AutoSize = true; label12.BackColor = Color.Transparent; - label12.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label12.Location = new Point(442, 277); + label12.Font = new Font("Noto Sans SC", 14.2499981F); + label12.Location = new Point(387, 275); label12.Name = "label12"; - label12.Size = new Size(88, 25); + label12.Size = new Size(85, 19); label12.TabIndex = 140; label12.Text = "会员等级"; // - // txtDeposit - // - txtDeposit.Cursor = Cursors.IBeam; - txtDeposit.Font = new Font("微软雅黑", 15.75F, FontStyle.Regular, GraphicsUnit.Point, 134); - txtDeposit.Location = new Point(547, 163); - txtDeposit.Margin = new Padding(4, 5, 4, 5); - txtDeposit.MinimumSize = new Size(1, 1); - txtDeposit.Name = "txtDeposit"; - txtDeposit.Padding = new Padding(5); - txtDeposit.Radius = 20; - txtDeposit.ReadOnly = true; - txtDeposit.ShowText = false; - txtDeposit.Size = new Size(250, 35); - txtDeposit.Style = Sunny.UI.UIStyle.Custom; - txtDeposit.StyleCustomMode = true; - txtDeposit.TabIndex = 152; - txtDeposit.TextAlignment = ContentAlignment.MiddleLeft; - txtDeposit.Watermark = ""; - // // label1 // label1.AutoSize = true; - label1.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label1.Location = new Point(443, 168); + label1.Font = new Font("Noto Sans SC", 14.2499981F); + label1.Location = new Point(387, 169); label1.Name = "label1"; - label1.Size = new Size(88, 25); + label1.Size = new Size(85, 19); label1.TabIndex = 151; label1.Text = "房间押金"; // + // ucWindowHeader1 + // + ucWindowHeader1.Location = new Point(0, -1); + ucWindowHeader1.Name = "ucWindowHeader1"; + ucWindowHeader1.Size = new Size(732, 35); + ucWindowHeader1.TabIndex = 153; + // + // btnCheckIn + // + btnCheckIn.Font = new Font("Noto Sans SC", 11.9999981F, FontStyle.Regular, GraphicsUnit.Point, 0); + btnCheckIn.Location = new Point(548, 322); + btnCheckIn.Name = "btnCheckIn"; + btnCheckIn.Size = new Size(85, 45); + btnCheckIn.TabIndex = 164; + btnCheckIn.Text = "入 住"; + btnCheckIn.Type = AntdUI.TTypeMini.Primary; + btnCheckIn.Click += FrmCheckIn_ButtonOkClick; + // + // btnCancel + // + btnCancel.Font = new Font("Noto Sans SC", 11.9999981F, FontStyle.Regular, GraphicsUnit.Point, 0); + btnCancel.Location = new Point(639, 322); + btnCancel.Name = "btnCancel"; + btnCancel.Size = new Size(85, 45); + btnCancel.TabIndex = 165; + btnCancel.Text = "取 消"; + btnCancel.Type = AntdUI.TTypeMini.Primary; + btnCancel.Click += btnCancel_Click; + // + // txtRoomNo + // + txtRoomNo.Font = new Font("Noto Sans SC", 12F); + txtRoomNo.Location = new Point(93, 51); + txtRoomNo.Name = "txtRoomNo"; + txtRoomNo.ReadOnly = true; + txtRoomNo.Size = new Size(250, 45); + txtRoomNo.TabIndex = 166; + // + // txtState + // + txtState.Font = new Font("Noto Sans SC", 12F); + txtState.Location = new Point(93, 104); + txtState.Name = "txtState"; + txtState.ReadOnly = true; + txtState.Size = new Size(250, 45); + txtState.TabIndex = 167; + // + // txtRoomPosition + // + txtRoomPosition.Font = new Font("Noto Sans SC", 12F); + txtRoomPosition.Location = new Point(93, 157); + txtRoomPosition.Name = "txtRoomPosition"; + txtRoomPosition.ReadOnly = true; + txtRoomPosition.Size = new Size(250, 45); + txtRoomPosition.TabIndex = 168; + // + // txtRent + // + txtRent.Font = new Font("Noto Sans SC", 12F); + txtRent.Location = new Point(474, 104); + txtRent.Name = "txtRent"; + txtRent.ReadOnly = true; + txtRent.Size = new Size(250, 45); + txtRent.TabIndex = 169; + // + // txtDeposit + // + txtDeposit.Font = new Font("Noto Sans SC", 12F); + txtDeposit.Location = new Point(474, 157); + txtDeposit.Name = "txtDeposit"; + txtDeposit.ReadOnly = true; + txtDeposit.Size = new Size(250, 45); + txtDeposit.TabIndex = 170; + // + // txtCustomerName + // + txtCustomerName.Font = new Font("Noto Sans SC", 12F); + txtCustomerName.Location = new Point(474, 210); + txtCustomerName.Name = "txtCustomerName"; + txtCustomerName.ReadOnly = true; + txtCustomerName.Size = new Size(250, 45); + txtCustomerName.TabIndex = 171; + // + // txtCustomerLevel + // + txtCustomerLevel.Font = new Font("Noto Sans SC", 12F); + txtCustomerLevel.Location = new Point(474, 263); + txtCustomerLevel.Name = "txtCustomerLevel"; + txtCustomerLevel.ReadOnly = true; + txtCustomerLevel.Size = new Size(250, 45); + txtCustomerLevel.TabIndex = 172; + // + // txtCustomerTel + // + txtCustomerTel.Font = new Font("Noto Sans SC", 12F); + txtCustomerTel.Location = new Point(93, 263); + txtCustomerTel.Name = "txtCustomerTel"; + txtCustomerTel.ReadOnly = true; + txtCustomerTel.Size = new Size(250, 45); + txtCustomerTel.TabIndex = 173; + // + // txtCustomerNo + // + txtCustomerNo.Font = new Font("Noto Sans SC", 12F); + txtCustomerNo.Location = new Point(93, 210); + txtCustomerNo.Name = "txtCustomerNo"; + txtCustomerNo.Size = new Size(250, 45); + txtCustomerNo.TabIndex = 174; + txtCustomerNo.Validated += txtCustoNo_Validated; + // + // txtRoomType + // + txtRoomType.Font = new Font("Noto Sans SC", 12F); + txtRoomType.Location = new Point(474, 51); + txtRoomType.Name = "txtRoomType"; + txtRoomType.ReadOnly = true; + txtRoomType.Size = new Size(250, 45); + txtRoomType.TabIndex = 175; + // // FrmCheckIn // AutoScaleMode = AutoScaleMode.None; BackColor = Color.FromArgb(235, 243, 255); - ClientSize = new Size(861, 384); + ClientSize = new Size(731, 379); ControlBox = false; + Controls.Add(txtRoomType); + Controls.Add(txtCustomerNo); + Controls.Add(txtCustomerTel); + Controls.Add(txtCustomerLevel); + Controls.Add(txtCustomerName); Controls.Add(txtDeposit); - Controls.Add(label1); - Controls.Add(txtCustoNo); - Controls.Add(txtCustoName); + Controls.Add(txtRent); Controls.Add(txtRoomPosition); + Controls.Add(txtState); + Controls.Add(txtRoomNo); + Controls.Add(btnCancel); + Controls.Add(btnCheckIn); + Controls.Add(ucWindowHeader1); + Controls.Add(label1); Controls.Add(label18); Controls.Add(label3); Controls.Add(label16); - Controls.Add(txtType); - Controls.Add(txtCustoTel); - Controls.Add(txtRoomNo); Controls.Add(label14); - Controls.Add(txtState); - Controls.Add(txtCustoType); - Controls.Add(txtMoney); Controls.Add(label12); Controls.Add(label13); Controls.Add(label15); Controls.Add(label19); Controls.Add(label20); Font = new Font("微软雅黑", 10.5F, FontStyle.Regular, GraphicsUnit.Point, 134); + FormBorderStyle = FormBorderStyle.FixedSingle; Icon = (Icon)resources.GetObject("$this.Icon"); - IsForbidAltF4 = true; Margin = new Padding(4, 5, 4, 5); Name = "FrmCheckIn"; - ShowTitleIcon = true; - Style = Sunny.UI.UIStyle.Custom; + StartPosition = FormStartPosition.CenterScreen; Text = "房间入住"; - ZoomScaleRect = new Rectangle(15, 15, 861, 384); - ButtonOkClick += FrmCheckIn_ButtonOkClick; - ButtonCancelClick += FrmCheckIn_ButtonCancelClick; Load += FrmCheckIn_Load; - Controls.SetChildIndex(label20, 0); - Controls.SetChildIndex(label19, 0); - Controls.SetChildIndex(label15, 0); - Controls.SetChildIndex(label13, 0); - Controls.SetChildIndex(label12, 0); - Controls.SetChildIndex(txtMoney, 0); - Controls.SetChildIndex(txtCustoType, 0); - Controls.SetChildIndex(txtState, 0); - Controls.SetChildIndex(label14, 0); - Controls.SetChildIndex(txtRoomNo, 0); - Controls.SetChildIndex(txtCustoTel, 0); - Controls.SetChildIndex(txtType, 0); - Controls.SetChildIndex(label16, 0); - Controls.SetChildIndex(label3, 0); - Controls.SetChildIndex(label18, 0); - Controls.SetChildIndex(txtRoomPosition, 0); - Controls.SetChildIndex(txtCustoName, 0); - Controls.SetChildIndex(txtCustoNo, 0); - Controls.SetChildIndex(label1, 0); - Controls.SetChildIndex(txtDeposit, 0); - Controls.SetChildIndex(pnlBtm, 0); - pnlBtm.ResumeLayout(false); ResumeLayout(false); PerformLayout(); } #endregion - private Sunny.UI.UITextBox txtRoomPosition; private System.Windows.Forms.Label label3; - private Sunny.UI.UIComboBox txtType; - private Sunny.UI.UITextBox txtRoomNo; - private Sunny.UI.UITextBox txtState; - private Sunny.UI.UITextBox txtMoney; private System.Windows.Forms.Label label13; private System.Windows.Forms.Label label15; private System.Windows.Forms.Label label19; private System.Windows.Forms.Label label20; - private Sunny.UI.UITextBox txtCustoNo; - private Sunny.UI.UITextBox txtCustoName; private System.Windows.Forms.Label label18; private System.Windows.Forms.Label label16; - private Sunny.UI.UITextBox txtCustoTel; private System.Windows.Forms.Label label14; - private Sunny.UI.UITextBox txtCustoType; private System.Windows.Forms.Label label12; - private Sunny.UI.UITextBox txtDeposit; private System.Windows.Forms.Label label1; + private ucWindowHeader ucWindowHeader1; + private AntdUI.Button btnCheckIn; + private AntdUI.Button btnCancel; + private AntdUI.Input txtRoomNo; + private AntdUI.Input txtState; + private AntdUI.Input txtRoomPosition; + private AntdUI.Input txtRent; + private AntdUI.Input txtDeposit; + private AntdUI.Input txtCustomerName; + private AntdUI.Input txtCustomerLevel; + private AntdUI.Input txtCustomerTel; + private AntdUI.Input txtCustomerNo; + private AntdUI.Input txtRoomType; } } \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckIn.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckIn.cs index 8bce80e..92453d0 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckIn.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckIn.cs @@ -23,20 +23,23 @@ */ +using AntdUI; using EOM.TSHotelManagement.Common; using EOM.TSHotelManagement.Common.Contract; using EOM.TSHotelManagement.Common.Core; using jvncorelib.EntityLib; -using Sunny.UI; using System.Transactions; namespace EOM.TSHotelManagement.FormUI { - public partial class FrmCheckIn : UIEditForm + public partial class FrmCheckIn : Window { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmCheckIn)); public FrmCheckIn() { InitializeComponent(); + + ucWindowHeader1.ApplySettingsWithoutMinimize("入住房间", string.Empty, (Image)resources.GetObject("FrmCheckIn.Icon")!); } ResponseMsg result = new ResponseMsg(); @@ -50,51 +53,25 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Room_SelectRoomByRoomNo, pairs); var response = HttpHelper.JsonToModel>(result.message!); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { - UIMessageTip.ShowError($"{ApiConstants.Room_SelectRoomByRoomNo}+接口服务异常,请提交issue"); + NotificationService.ShowError($"{ApiConstants.Room_SelectRoomByRoomNo}+接口服务异常,请提交issue"); return; } ReadRoomOutputDto r = response.Data; result = HttpHelper.Request(ApiConstants.RoomType_SelectRoomTypeByRoomNo, pairs); var roomTypeResponse = HttpHelper.JsonToModel>(result.message!); - if (roomTypeResponse.Code != BusinessStatusCode.Success) + if (roomTypeResponse.Success == false) { - UIMessageTip.ShowError($"{ApiConstants.RoomType_SelectRoomTypeByRoomNo}+接口服务异常,请提交issue"); + NotificationService.ShowError($"{ApiConstants.RoomType_SelectRoomTypeByRoomNo}+接口服务异常,请提交issue"); return; } ReadRoomTypeOutputDto t = roomTypeResponse.Data; - txtType.Text = t.RoomTypeName; - txtMoney.Text = r.RoomRent.ToString(); + txtRoomType.Text = t.RoomTypeName; + txtRent.Text = r.RoomRent.ToString(); txtRoomPosition.Text = r.RoomLocation; txtState.Text = r.RoomState; txtDeposit.Text = r.RoomDeposit.ToString(); - pairs = new Dictionary - { - { nameof(ReadCustomerInputDto.IgnorePaging) , "true" }, - { nameof(ReadCustomerInputDto.IsDelete) , "0" } - }; - result = HttpHelper.Request(ApiConstants.Customer_SelectCustomers, pairs); - var customerResponse = HttpHelper.JsonToModel>(result.message!); - if (customerResponse.Code != BusinessStatusCode.Success) - { - UIMessageTip.ShowError($"{ApiConstants.Customer_SelectCustomers}+接口服务异常,请提交issue"); - return; - } - var custoList = customerResponse.Data.Items; - if (custoList != null && custoList != null) - { - var ctos = custoList.Select(custo => custo.CustomerNumber).ToArray(); - txtCustoNo.AutoCompleteCustomSource.AddRange(ctos); - } - try - { - txtCustoNo.Text = ""; - } - catch - { - txtCustoNo.Text = ucRoom.rm_CustoNo; - } } private void txtCustoNo_Validated(object sender, EventArgs e) @@ -105,7 +82,7 @@ namespace EOM.TSHotelManagement.FormUI } catch (Exception ex) { - UIMessageTip.ShowError($"接口服务异常,请提交issue: {ex.Message}", 3000); + NotificationService.ShowError($"接口服务异常,请提交issue: {ex.Message}"); } } @@ -119,9 +96,9 @@ namespace EOM.TSHotelManagement.FormUI }; var result = HttpHelper.Request(ApiConstants.VipLevelRule_SelectVipRuleList, dic); var response = HttpHelper.JsonToModel>(result.message!); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { - UIMessageTip.ShowError($"{ApiConstants.VipLevelRule_SelectVipRuleList}+接口服务异常,请提交issue: {response.Message}", 3000); + NotificationService.ShowError($"{ApiConstants.VipLevelRule_SelectVipRuleList}+接口服务异常,请提交issue: {response.Message}"); } var listVipRule = response.Data.Items @@ -130,12 +107,12 @@ namespace EOM.TSHotelManagement.FormUI .ToList(); // 查询用户消费记录 - var user = new Dictionary { { nameof(ReadSpendInputDto.CustomerNumber), txtCustoNo.Text.Trim() } }; + var user = new Dictionary { { nameof(ReadSpendInputDto.CustomerNumber), txtCustomerNo.Text.Trim() } }; result = HttpHelper.Request(ApiConstants.Spend_SeletHistorySpendInfoAll, user); var customerSpends = HttpHelper.JsonToModel>(result.message!); - if (customerSpends.Code != BusinessStatusCode.Success) + if (customerSpends.Success == false) { - UIMessageTip.ShowError($"{ApiConstants.Spend_SeletHistorySpendInfoAll}+接口服务异常,请提交issue: {response.Message}", 3000); + NotificationService.ShowError($"{ApiConstants.Spend_SeletHistorySpendInfoAll}+接口服务异常,请提交issue: {response.Message}"); } var listCustoSpend = customerSpends.Data.Items; @@ -151,10 +128,10 @@ namespace EOM.TSHotelManagement.FormUI // 如果会员等级有变,更新会员等级 if (new_type != 0) { - var customer = new UpdateCustomerInputDto { CustomerNumber = txtCustoNo.Text.Trim(), CustomerType = new_type }; + var customer = new UpdateCustomerInputDto { CustomerNumber = txtCustomerNo.Text.Trim(), CustomerType = new_type }; result = HttpHelper.Request(ApiConstants.Customer_UpdCustomerTypeByCustoNo, customer.ModelToJson()); var updateResponse = HttpHelper.JsonToModel(result.message!); - if (updateResponse.Code != BusinessStatusCode.Success) + if (updateResponse.Success == false) { throw new Exception($"{ApiConstants.Customer_UpdCustomerTypeByCustoNo}+接口服务异常"); } @@ -162,29 +139,29 @@ namespace EOM.TSHotelManagement.FormUI } // 获取用户卡片信息 - if (!string.IsNullOrEmpty(txtCustoNo.Text)) + if (!string.IsNullOrEmpty(txtCustomerNo.Text)) { - user = new Dictionary { { nameof(ReadCustomerInputDto.CustomerNumber), txtCustoNo.Text.Trim() } }; + user = new Dictionary { { nameof(ReadCustomerInputDto.CustomerNumber), txtCustomerNo.Text.Trim() } }; result = HttpHelper.Request(ApiConstants.Customer_SelectCustoByInfo, user); var customerResponse = HttpHelper.JsonToModel>(result.message!); - if (customerResponse.Code != BusinessStatusCode.Success) + if (customerResponse.Success == false) { throw new Exception($"{ApiConstants.Customer_SelectCustoByInfo}+接口服务异常"); } var custo = customerResponse.Data; - txtCustoName.Text = custo?.CustomerNumber ?? ""; - txtCustoTel.Text = custo?.CustomerPhoneNumber ?? ""; - txtCustoType.Text = custo?.CustomerTypeName ?? ""; + txtCustomerName.Text = custo?.CustomerName ?? ""; + txtCustomerTel.Text = custo?.CustomerPhoneNumber ?? ""; + txtCustomerLevel.Text = custo?.CustomerTypeName ?? ""; } } private void FrmCheckIn_ButtonOkClick(object sender, EventArgs e) { - var user = new Dictionary { { nameof(ReadCustomerInputDto.CustomerNumber), txtCustoNo.Text.Trim() } }; + var user = new Dictionary { { nameof(ReadCustomerInputDto.CustomerNumber), txtCustomerNo.Text.Trim() } }; result = HttpHelper.Request(ApiConstants.Customer_SelectCustoByInfo, user); var customerResponse = HttpHelper.JsonToModel>(result.message!); - if (customerResponse.Code != BusinessStatusCode.Success) + if (customerResponse.Success == false) { throw new Exception($"{ApiConstants.Customer_SelectCustoByInfo}+接口服务异常"); } @@ -197,21 +174,21 @@ namespace EOM.TSHotelManagement.FormUI UpdateRoomInputDto r = new UpdateRoomInputDto() { LastCheckInTime = DateOnly.FromDateTime(DateTime.Now), - CustomerNumber = txtCustoNo.Text, + CustomerNumber = txtCustomerNo.Text, RoomStateId = (int)RoomState.Occupied, RoomNumber = txtRoomNo.Text, - DataChgUsr = LoginInfo.WorkerNo + DataChgUsr = LoginInfo.WorkerNo, + DataChgDate = DateTime.Now }; result = HttpHelper.Request(ApiConstants.Room_UpdateRoomInfo, r.ModelToJson()); var response = HttpHelper.JsonToModel(result.message!); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { - UIMessageTip.ShowError($"{ApiConstants.Room_UpdateRoomInfo}+接口服务异常,请提交issue"); - UIMessageBox.Show("登记入住失败!", "登记提示", UIStyle.Red); + NotificationService.ShowError($"{ApiConstants.Room_UpdateRoomInfo}+接口服务异常,请提交issue"); return; } - UIMessageBox.Show("登记入住成功!", "登记提示", UIStyle.Green); - txtCustoNo.Text = ""; + NotificationService.ShowSuccess("登记入住成功!"); + txtCustomerNo.Text = ""; FrmRoomManager.Reload(""); FrmRoomManager._RefreshRoomCount(); #region 获取添加操作日志所需的信息 @@ -224,11 +201,11 @@ namespace EOM.TSHotelManagement.FormUI } else { - UIMessageBox.Show("所选客户不存在!", "系统提示", UIStyle.Red); + NotificationService.ShowError("所选客户不存在!"); } } - private void FrmCheckIn_ButtonCancelClick(object sender, EventArgs e) + private void btnCancel_Click(object sender, EventArgs e) { this.Close(); } diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutDetail.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutDetail.Designer.cs new file mode 100644 index 0000000..85caa8c --- /dev/null +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutDetail.Designer.cs @@ -0,0 +1,380 @@ +namespace EOM.TSHotelManagement.FormUI +{ + partial class FrmCheckOutDetail + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmCheckOutDetail)); + dtpCheckTime = new AntdUI.Input(); + label24 = new Label(); + txtRoomNo = new AntdUI.Input(); + label27 = new Label(); + CustoName = new AntdUI.Input(); + label28 = new Label(); + CustoNo = new AntdUI.Input(); + lblChange = new Label(); + btnBalance = new AntdUI.Button(); + label25 = new Label(); + txtReceipts = new AntdUI.Input(); + label21 = new Label(); + btnPg = new AntdUI.Pagination(); + lblVIP = new Label(); + dgvSpendList = new AntdUI.Table(); + label29 = new Label(); + lblGetReceipts = new Label(); + lblVIPPrice = new Label(); + lable00 = new Label(); + label18 = new Label(); + label1 = new Label(); + label15 = new Label(); + lblDay = new Label(); + label17 = new Label(); + ucWindowHeader1 = new ucWindowHeader(); + SuspendLayout(); + // + // dtpCheckTime + // + dtpCheckTime.Font = new Font("Microsoft YaHei UI", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); + dtpCheckTime.Location = new Point(408, 51); + dtpCheckTime.Name = "dtpCheckTime"; + dtpCheckTime.PlaceholderText = ""; + dtpCheckTime.ReadOnly = true; + dtpCheckTime.Size = new Size(180, 42); + dtpCheckTime.TabIndex = 185; + // + // label24 + // + label24.AutoSize = true; + label24.Font = new Font("Noto Sans SC", 14.2499981F); + label24.Location = new Point(18, 61); + label24.Name = "label24"; + label24.Size = new Size(85, 19); + label24.TabIndex = 172; + label24.Text = "客户编号"; + // + // txtRoomNo + // + txtRoomNo.Font = new Font("Microsoft YaHei UI", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); + txtRoomNo.Location = new Point(408, 102); + txtRoomNo.Name = "txtRoomNo"; + txtRoomNo.PlaceholderText = ""; + txtRoomNo.ReadOnly = true; + txtRoomNo.Size = new Size(180, 42); + txtRoomNo.TabIndex = 184; + // + // label27 + // + label27.AutoSize = true; + label27.Font = new Font("Noto Sans SC", 14.2499981F); + label27.Location = new Point(323, 113); + label27.Name = "label27"; + label27.Size = new Size(85, 19); + label27.TabIndex = 175; + label27.Text = "房间编号"; + // + // CustoName + // + CustoName.Font = new Font("Microsoft YaHei UI", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); + CustoName.Location = new Point(103, 102); + CustoName.Name = "CustoName"; + CustoName.PlaceholderText = ""; + CustoName.ReadOnly = true; + CustoName.Size = new Size(214, 42); + CustoName.TabIndex = 183; + // + // label28 + // + label28.AutoSize = true; + label28.Font = new Font("Noto Sans SC", 14.2499981F); + label28.Location = new Point(323, 61); + label28.Name = "label28"; + label28.Size = new Size(85, 19); + label28.TabIndex = 174; + label28.Text = "入住时间"; + // + // CustoNo + // + CustoNo.Font = new Font("Microsoft YaHei UI", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); + CustoNo.Location = new Point(103, 51); + CustoNo.Name = "CustoNo"; + CustoNo.PlaceholderText = ""; + CustoNo.ReadOnly = true; + CustoNo.Size = new Size(214, 42); + CustoNo.TabIndex = 182; + // + // lblChange + // + lblChange.AutoSize = true; + lblChange.Font = new Font("Noto Sans SC", 11.9999981F); + lblChange.Location = new Point(605, 445); + lblChange.Name = "lblChange"; + lblChange.Size = new Size(38, 17); + lblChange.TabIndex = 167; + lblChange.Text = "0.00"; + // + // btnBalance + // + btnBalance.Font = new Font("Noto Sans SC", 12F); + btnBalance.Location = new Point(544, 533); + btnBalance.Name = "btnBalance"; + btnBalance.Size = new Size(132, 48); + btnBalance.TabIndex = 181; + btnBalance.Text = "结 算"; + btnBalance.Type = AntdUI.TTypeMini.Primary; + btnBalance.Click += btnBalance_Click; + // + // label25 + // + label25.AutoSize = true; + label25.Font = new Font("Noto Sans SC", 11.9999981F); + label25.Location = new Point(323, 444); + label25.Name = "label25"; + label25.Size = new Size(88, 17); + label25.TabIndex = 168; + label25.Text = "会员折扣:"; + // + // txtReceipts + // + txtReceipts.Font = new Font("Noto Sans SC", 11.9999981F, FontStyle.Regular, GraphicsUnit.Point, 0); + txtReceipts.HandCursor = Cursors.IBeam; + txtReceipts.Location = new Point(404, 468); + txtReceipts.Name = "txtReceipts"; + txtReceipts.PlaceholderText = ""; + txtReceipts.Size = new Size(111, 36); + txtReceipts.TabIndex = 180; + txtReceipts.TextChanged += txtReceipts_TextChanged; + // + // label21 + // + label21.AutoSize = true; + label21.Font = new Font("Noto Sans SC", 11.9999981F); + label21.Location = new Point(517, 445); + label21.Name = "label21"; + label21.Size = new Size(88, 17); + label21.TabIndex = 166; + label21.Text = "找 零:"; + // + // btnPg + // + btnPg.Location = new Point(12, 365); + btnPg.Name = "btnPg"; + btnPg.PageSize = 15; + btnPg.ShowSizeChanger = true; + btnPg.Size = new Size(654, 32); + btnPg.TabIndex = 179; + btnPg.Total = 1000000; + btnPg.ValueChanged += btnPg_ValueChanged; + btnPg.ShowTotalChanged += btnPg_ShowTotalChanged; + // + // lblVIP + // + lblVIP.AutoSize = true; + lblVIP.Font = new Font("Noto Sans SC", 11.9999981F); + lblVIP.Location = new Point(412, 444); + lblVIP.Name = "lblVIP"; + lblVIP.Size = new Size(72, 17); + lblVIP.TabIndex = 169; + lblVIP.Text = "不 打 折"; + // + // dgvSpendList + // + dgvSpendList.Gap = 12; + dgvSpendList.Location = new Point(12, 148); + dgvSpendList.Name = "dgvSpendList"; + dgvSpendList.Size = new Size(654, 208); + dgvSpendList.TabIndex = 178; + dgvSpendList.Text = "table1"; + // + // label29 + // + label29.AutoSize = true; + label29.Font = new Font("Noto Sans SC", 14.2499981F, FontStyle.Regular, GraphicsUnit.Point, 0); + label29.Location = new Point(591, 61); + label29.Name = "label29"; + label29.Size = new Size(85, 19); + label29.TabIndex = 176; + label29.Text = "已住天数"; + // + // lblGetReceipts + // + lblGetReceipts.AutoSize = true; + lblGetReceipts.Font = new Font("Noto Sans SC", 11.9999981F); + lblGetReceipts.Location = new Point(413, 412); + lblGetReceipts.Name = "lblGetReceipts"; + lblGetReceipts.Size = new Size(38, 17); + lblGetReceipts.TabIndex = 165; + lblGetReceipts.Text = "0.00"; + // + // lblVIPPrice + // + lblVIPPrice.AutoSize = true; + lblVIPPrice.Font = new Font("Noto Sans SC", 11.9999981F); + lblVIPPrice.Location = new Point(605, 413); + lblVIPPrice.Name = "lblVIPPrice"; + lblVIPPrice.Size = new Size(38, 17); + lblVIPPrice.TabIndex = 171; + lblVIPPrice.Text = "0.00"; + // + // lable00 + // + lable00.AutoSize = true; + lable00.Font = new Font("Noto Sans SC", 11.9999981F); + lable00.Location = new Point(517, 413); + lable00.Name = "lable00"; + lable00.Size = new Size(88, 17); + lable00.TabIndex = 170; + lable00.Text = "应付金额:"; + // + // label18 + // + label18.AutoSize = true; + label18.Font = new Font("Noto Sans SC", 11.9999981F); + label18.Location = new Point(323, 412); + label18.Name = "label18"; + label18.Size = new Size(88, 17); + label18.TabIndex = 164; + label18.Text = "消费总额:"; + // + // label1 + // + label1.AutoSize = true; + label1.Font = new Font("Noto Sans SC", 14.2499981F); + label1.Location = new Point(18, 113); + label1.Name = "label1"; + label1.Size = new Size(85, 19); + label1.TabIndex = 173; + label1.Text = "客户姓名"; + // + // label15 + // + label15.AutoSize = true; + label15.Font = new Font("Noto Sans SC Medium", 10.499999F, FontStyle.Regular, GraphicsUnit.Point, 0); + label15.ForeColor = Color.Red; + label15.Location = new Point(12, 567); + label15.Name = "label15"; + label15.Size = new Size(251, 14); + label15.TabIndex = 162; + label15.Text = "Tips:请提醒客人不要忘记带齐行李哦~"; + // + // lblDay + // + lblDay.AutoSize = true; + lblDay.Font = new Font("Noto Sans SC", 14.9999981F, FontStyle.Regular, GraphicsUnit.Point, 0); + lblDay.Location = new Point(608, 112); + lblDay.Name = "lblDay"; + lblDay.Size = new Size(45, 20); + lblDay.TabIndex = 177; + lblDay.Text = "Null"; + // + // label17 + // + label17.AutoSize = true; + label17.Font = new Font("Noto Sans SC", 11.9999981F); + label17.Location = new Point(323, 479); + label17.Name = "label17"; + label17.Size = new Size(88, 17); + label17.TabIndex = 163; + label17.Text = "实收金额:"; + // + // ucWindowHeader1 + // + ucWindowHeader1.Location = new Point(-1, 0); + ucWindowHeader1.Name = "ucWindowHeader1"; + ucWindowHeader1.Size = new Size(690, 35); + ucWindowHeader1.TabIndex = 186; + // + // FrmCheckOutDetail + // + AutoScaleDimensions = new SizeF(7F, 17F); + AutoScaleMode = AutoScaleMode.Font; + BackColor = Color.FromArgb(235, 243, 255); + ClientSize = new Size(689, 590); + Controls.Add(ucWindowHeader1); + Controls.Add(dtpCheckTime); + Controls.Add(label24); + Controls.Add(txtRoomNo); + Controls.Add(label27); + Controls.Add(CustoName); + Controls.Add(label28); + Controls.Add(CustoNo); + Controls.Add(lblChange); + Controls.Add(btnBalance); + Controls.Add(label25); + Controls.Add(txtReceipts); + Controls.Add(label21); + Controls.Add(btnPg); + Controls.Add(lblVIP); + Controls.Add(dgvSpendList); + Controls.Add(label29); + Controls.Add(lblGetReceipts); + Controls.Add(lblVIPPrice); + Controls.Add(lable00); + Controls.Add(label18); + Controls.Add(label1); + Controls.Add(label15); + Controls.Add(lblDay); + Controls.Add(label17); + FormBorderStyle = FormBorderStyle.None; + Icon = (Icon)resources.GetObject("$this.Icon"); + Name = "FrmCheckOutDetail"; + Resizable = false; + StartPosition = FormStartPosition.CenterScreen; + Text = "FrmCheckOutDetail"; + Load += FrmCheckOutDetail_Load; + ResumeLayout(false); + PerformLayout(); + } + + #endregion + + private AntdUI.Input dtpCheckTime; + private Label label24; + private AntdUI.Input txtRoomNo; + private Label label27; + private AntdUI.Input CustoName; + private Label label28; + private AntdUI.Input CustoNo; + private Label lblChange; + private AntdUI.Button btnBalance; + private Label label25; + private AntdUI.Input txtReceipts; + private Label label21; + private AntdUI.Pagination btnPg; + private Label lblVIP; + private AntdUI.Table dgvSpendList; + private Label label29; + private Label lblGetReceipts; + private Label lblVIPPrice; + private Label lable00; + private Label label18; + private Label label1; + private Label label15; + private Label lblDay; + private Label label17; + private ucWindowHeader ucWindowHeader1; + } +} \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutForm.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutDetail.cs similarity index 47% rename from EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutForm.cs rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutDetail.cs index da06c5e..d3f6cfa 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutForm.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutDetail.cs @@ -1,103 +1,40 @@ -/* - * MIT License - *Copyright (c) 2021 易开元(EOM) - - *Permission is hereby granted, free of charge, to any person obtaining a copy - *of this software and associated documentation files (the "Software"), to deal - *in the Software without restriction, including without limitation the rights - *to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - *copies of the Software, and to permit persons to whom the Software is - *furnished to do so, subject to the following conditions: - - *The above copyright notice and this permission notice shall be included in all - *copies or substantial portions of the Software. - - *THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - *IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - *FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - *AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - *LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - *OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - *SOFTWARE. - * - */ - +using AntdUI; using EOM.TSHotelManagement.Common; using EOM.TSHotelManagement.Common.Contract; using EOM.TSHotelManagement.Shared; using jvncorelib.EntityLib; -using Sunny.UI; +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; namespace EOM.TSHotelManagement.FormUI { - public partial class FrmCheckOutForm : UIForm + public partial class FrmCheckOutDetail : Window { - public static string co_CustoNo; - public static string co_RoomNo; - public static string co_CustoName; - public static string co_CustoBirthday; - public static string co_CustoSex; - public static string co_CustoTel; - public static string co_CustoPassportType; - public static string co_CustoAddress; - public static string co_CustoType; - public static string co_CustoID; - public static CreateEnergyManagementInputDto w; - private LoadingProgress _loadingProgress; - - public FrmCheckOutForm(LoadingProgress loadingProgress) + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmCheckOutDetail)); + public FrmCheckOutDetail() { InitializeComponent(); - _loadingProgress = loadingProgress; + + ucWindowHeader1.ApplySettingsWithoutMinimize("房间结算", string.Empty, (Image)resources.GetObject("FrmCheckOutDetail.Icon")!); } ResponseMsg result = null; Dictionary dic = null; + public static CreateEnergyManagementInputDto w; - #region 记录鼠标和窗体坐标的方法 - private Point mouseOld;//鼠标旧坐标 - private Point formOld;//窗体旧坐标 - #endregion - - #region 记录移动的窗体坐标 - private void FrmCheckOutForm_MouseDown(object sender, MouseEventArgs e) - { - formOld = this.Location; - mouseOld = MousePosition; - } - #endregion - - #region 记录窗体移动的坐标 - private void FrmCheckOutForm_MouseMove(object sender, MouseEventArgs e) - { - if (e.Button == MouseButtons.Left) - { - Point mouseNew = MousePosition; - int moveX = mouseNew.X - mouseOld.X; - int moveY = mouseNew.Y - mouseOld.Y; - this.Location = new Point(formOld.X + moveX, formOld.Y + moveY); - } - } - #endregion - - #region 窗体加载事件 - private void FrmCheckOutForm_Load(object sender, EventArgs e) + private void FrmCheckOutDetail_Load(object sender, EventArgs e) { - #region 加载客户类型信息 - result = HttpHelper.Request(ApiConstants.Base_SelectCustoTypeAllCanUse); - var customerTypes = HttpHelper.JsonToModel>(result.message); - if (customerTypes.Code != BusinessStatusCode.Success) - { - UIMessageBox.ShowError("SelectCustoTypeAllCanUse+接口服务异常,请提交Issue或尝试更新版本!"); - return; - } - List lstDataGrid = customerTypes.Data.Items; - #endregion - decimal sum = 0; - txtCustomerNumber.Text = ucRoom.rm_CustoNo; CustoNo.Text = ucRoom.rm_CustoNo; txtRoomNo.Text = ucRoom.rm_RoomNo; + CustoName.Text = ucRoom.co_CustoName; dic = new Dictionary() { @@ -106,9 +43,9 @@ namespace EOM.TSHotelManagement.FormUI result = HttpHelper.Request(ApiConstants.Room_SelectRoomByRoomNo, dic); var roomInfo = HttpHelper.JsonToModel>(result.message); - if (roomInfo.Code != BusinessStatusCode.Success) + if (roomInfo.Success == false) { - UIMessageBox.ShowError("SelectRoomByRoomNo+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError("SelectRoomByRoomNo+接口服务异常,请提交Issue或尝试更新版本!"); return; } @@ -116,11 +53,11 @@ namespace EOM.TSHotelManagement.FormUI if (room.LastCheckInTime == null) { - dtpCheckTime.Text = Convert.ToDateTime(DateTime.Now).ToString("yyyy-MM-dd"); + dtpCheckTime.Text = Convert.ToDateTime(DateTime.Now).ToString("yyyy/MM/dd"); } else { - dtpCheckTime.Text = Convert.ToDateTime(room.LastCheckInTime).ToString("yyyy-MM-dd"); + dtpCheckTime.Text = Convert.ToDateTime(room.LastCheckInTime).ToString("yyyy/MM/dd"); } dic = new Dictionary() { @@ -128,9 +65,9 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Room_DayByRoomNo, dic); var stayDays = HttpHelper.JsonToModel>(result.message); - if (stayDays.Code != 200) + if (stayDays.Success == false) { - UIMessageBox.ShowError("DayByRoomNo+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError("DayByRoomNo+接口服务异常,请提交Issue或尝试更新版本!"); return; } @@ -144,39 +81,6 @@ namespace EOM.TSHotelManagement.FormUI WaterUsage = Convert.ToDecimal(Convert.ToDouble(stayDays.Data.StayDays) * 80 * 0.002) }; - #region 加载客户信息 - dic = new Dictionary() - { - { nameof(ReadCustomerInputDto.CustomerNumber),CustoNo.Text.ToString() } - }; - result = HttpHelper.Request(ApiConstants.Customer_SelectCustoByInfo, dic); - SingleOutputDto customer = HttpHelper.JsonToModel>(result.message); - if (customer?.Code != BusinessStatusCode.Success) - { - UIMessageBox.ShowError("SelectCustoByInfo+接口服务异常,请提交Issue或尝试更新版本!"); - return; - } - try - { - CustoName.Text = customer?.Data.CustomerName; - txtCustomerName.Text = customer?.Data.CustomerName; - txtTel.Text = customer?.Data.CustomerPhoneNumber; - txtCustomerGender.Text = customer?.Data.GenderName ?? string.Empty; - txtCustomerType.Text = customer.Data.CustomerTypeName; - txtPassportName.Text = customer.Data.PassportName; - txtDateOfBirth.Text = customer.Data.DateOfBirth.ToString("yyyy/MM/dd"); - txtIdCardNumber.Text = customer.Data.IdCardNumber; - txtCustomerAddress.Text = customer.Data.CustomerAddress; - } - catch - { - - - } - - - #endregion - #region 加载消费信息 var dataCount = 0; @@ -196,34 +100,47 @@ namespace EOM.TSHotelManagement.FormUI #endregion - #region 加载水电费信息 - dgvWti.Spin("正在加载中...", config => + dic = new Dictionary() { - TableComHelper tableComHelper = new TableComHelper(); - dgvWti.Columns = tableComHelper.ConvertToAntdColumns(tableComHelper.GenerateDataColumns()); - dgvWti.DataSource = GetEnergyPageData(); - }, () => + { nameof(ReadCustomerInputDto.CustomerNumber), CustoNo.Text.Trim() } + }; + var request = HttpHelper.Request(ApiConstants.Customer_SelectCustoByInfo, dic); + var customerResponse = HttpHelper.JsonToModel>(request.message); + if (customerResponse.Success == false) { - System.Diagnostics.Debug.WriteLine("加载结束"); - }); - #endregion + NotificationService.ShowError($"{ApiConstants.Spend_SumConsumptionAmount}+接口服务异常,请提交Issue或尝试更新版本!"); + return; + } + var customer = customerResponse.Data; - var customerType = lstDataGrid.SingleOrDefault(a => a.CustomerTypeName == txtCustomerType.Text); + dic = new Dictionary() + { + { nameof(ReadCustoTypeInputDto.CustomerType), customer.CustomerType.ToString() } + }; + request = HttpHelper.Request(ApiConstants.CustoType_SelectCustoTypeByTypeId, dic); + var customerTypeResponse = HttpHelper.JsonToModel>(request.message); + if (customerTypeResponse.Success == false) + { + NotificationService.ShowError($"{ApiConstants.Spend_SumConsumptionAmount}+接口服务异常,请提交Issue或尝试更新版本!"); + return; + } + + var customerType = customerTypeResponse.Data; //计算消费总额 dic = new Dictionary() { { nameof(ReadSpendInputDto.RoomNumber), txtRoomNo.Text.Trim() }, - { nameof(ReadSpendInputDto.CustomerNumber), txtCustomerNumber.Text.Trim() }, + { nameof(ReadSpendInputDto.CustomerNumber), CustoNo.Text.Trim() }, }; result = HttpHelper.Request(ApiConstants.Spend_SumConsumptionAmount, dic); - var response = HttpHelper.JsonToModel>(result.message); - if (response.Code != BusinessStatusCode.Success) + var spendResponse = HttpHelper.JsonToModel>(result.message); + if (spendResponse.Success == false) { - UIMessageBox.ShowError($"{ApiConstants.Spend_SumConsumptionAmount}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Spend_SumConsumptionAmount}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - decimal total = response.Data.ConsumptionAmount; + decimal total = spendResponse.Data.ConsumptionAmount; decimal m = total + sum; decimal discount = (customerType != null && customerType.Discount > 0 && customerType.Discount < 100) ? customerType.Discount / 100M @@ -231,38 +148,35 @@ namespace EOM.TSHotelManagement.FormUI lblGetReceipts.Text = m.ToString("#,##0.00"); lblVIPPrice.Text = (m * discount).ToString("#,##0.00"); lblVIP.Text = (discount < 1M) ? DiscountHelper.ToZheString(customerType.Discount) : "无折扣(100%)"; - Refresh(); } - #endregion - #region 实收金额文本框值改变时事件 - private void txtReceipts_TextChanged(object sender, EventArgs e) + object GetPageData(int current, int pageSize, ref int totalCount) { - if (txtReceipts.Text != "") + string RoomNo = txtRoomNo.Text; + dic = new Dictionary() { - try - { - double receipt = Convert.ToDouble(Convert.ToDecimal(txtReceipts.Text)); - double vipPrice = Convert.ToDouble(Convert.ToDecimal(lblVIPPrice.Text)); - lblChange.Text = Decimal.Parse((receipt - vipPrice).ToString()).ToString("#,##0.00"); - } - catch - { - UIMessageBox.Show("非法输入,请重新输入!", "系统提示", UIStyle.Orange); - txtReceipts.Clear(); - txtReceipts.Focus(); - return; - } - } - else + { nameof(ReadSpendInputDto.RoomNumber) , RoomNo }, + { nameof(ReadAdministratorInputDto.IgnorePaging) , "true" } + }; + result = HttpHelper.Request(ApiConstants.Spend_SelectSpendByRoomNo, dic); + var spendInfo = HttpHelper.JsonToModel>(result.message); + if (spendInfo.Success == false) { - lblChange.Text = "-" + lblGetReceipts.Text; - return; + NotificationService.ShowError($"{ApiConstants.Spend_SelectSpendByRoomNo}+接口服务异常,请提交Issue或尝试更新版本!"); } + + List spends = spendInfo.Data.Items; + totalCount = spendInfo.Data.TotalCount; + var listTableData = new List(); + + spends = spends.OrderBy(a => a.SpendNumber).ToList(); + + TableComHelper tableComHelper = new TableComHelper(); + listTableData = tableComHelper.ConvertToAntdItems(spends); + + return listTableData; } - #endregion - #region 结算按钮点击事件 private void btnBalance_Click(object sender, EventArgs e) { if (!string.IsNullOrEmpty(txtReceipts.Text) && Convert.ToDecimal(txtReceipts.Text) > Convert.ToDecimal(lblVIPPrice.Text))//判断实收金额是否为空以及是否小于应收金额 @@ -270,7 +184,7 @@ namespace EOM.TSHotelManagement.FormUI var model = new CheckoutRoomDto { RoomNumber = txtRoomNo.Text.Trim(), - CustomerNumber = txtCustomerNumber.Text.Trim(), + CustomerNumber = CustoNo.Text.Trim(), DataChgDate = DateTime.Now, DataChgUsr = LoginInfo.WorkerNo, ElectricityUsage = w.PowerUsage, @@ -278,34 +192,28 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Room_CheckoutRoom, model.ModelToJson()); var response = HttpHelper.JsonToModel(result.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { - UIMessageBox.ShowError($"{ApiConstants.Room_CheckoutRoom}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Room_CheckoutRoom}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - UIMessageBox.Show("结算成功!", "系统提示", UIStyle.Green); + NotificationService.ShowSuccess("结算成功!"); FrmRoomManager.Reload(""); FrmRoomManager._RefreshRoomCount(); #region 获取添加操作日志所需的信息 - RecordHelper.Record(LoginInfo.WorkerClub + "-" + LoginInfo.WorkerPosition + "-" + LoginInfo.WorkerName + "于" + Convert.ToDateTime(DateTime.Now) + "帮助" + txtCustomerNumber.Text + "进行了退房结算操作!", Common.Core.LogLevel.Critical); + RecordHelper.Record(LoginInfo.WorkerClub + "-" + LoginInfo.WorkerPosition + "-" + LoginInfo.WorkerName + "于" + Convert.ToDateTime(DateTime.Now) + "帮助" + CustoNo.Text + "进行了退房结算操作!", Common.Core.LogLevel.Critical); #endregion this.Close(); } else { - UIMessageBox.Show("实收金额不能为空或实收金额不能小于折后金额!", "系统提示", UIStyle.Orange); + NotificationService.ShowWarning("实收金额不能为空或实收金额不能小于应付金额!"); return; } } - #endregion - private string btnPg_ShowTotalChanged(object sender, AntdUI.PagePageEventArgs e) - { - return $"{e.PageSize} / {e.Total}条 共{e.PageTotal}页"; - } - - private void btnPg_ValueChanged(object sender, AntdUI.PagePageEventArgs e) + private void btnPg_ValueChanged(object sender, PagePageEventArgs e) { var dataCount = 0; dgvSpendList.Spin("正在加载中...", config => @@ -318,57 +226,34 @@ namespace EOM.TSHotelManagement.FormUI }); } - object GetPageData(int current, int pageSize, ref int totalCount) + private string btnPg_ShowTotalChanged(object sender, PagePageEventArgs e) { - string RoomNo = txtRoomNo.Text; - dic = new Dictionary() - { - { nameof(ReadSpendInputDto.RoomNumber) , RoomNo }, - { nameof(ReadAdministratorInputDto.IgnorePaging) , "true" } - }; - result = HttpHelper.Request(ApiConstants.Spend_SelectSpendByRoomNo, dic); - var spendInfo = HttpHelper.JsonToModel>(result.message); - if (spendInfo.Code != BusinessStatusCode.Success) - { - UIMessageBox.ShowError($"{ApiConstants.Spend_SelectSpendByRoomNo}+接口服务异常,请提交Issue或尝试更新版本!"); - } - - List spends = spendInfo.Data.Items; - totalCount = spendInfo.Data.TotalCount; - var listTableData = new List(); - - spends = spends.OrderBy(a => a.SpendNumber).ToList(); - - TableComHelper tableComHelper = new TableComHelper(); - listTableData = tableComHelper.ConvertToAntdItems(spends); - - return listTableData; + return $"{e.PageSize} / {e.Total}条 共{e.PageTotal}页"; } - object GetEnergyPageData() + private void txtReceipts_TextChanged(object sender, EventArgs e) { - dic = new Dictionary() + if (txtReceipts.Text != "") { - { nameof(ReadEnergyManagementInputDto.RoomNo),txtRoomNo.Text.Trim()} - }; - result = HttpHelper.Request(ApiConstants.EnergyManagement_SelectEnergyManagementInfo, dic); - var energyManagements = HttpHelper.JsonToModel>(result.message); - if (energyManagements.Code != BusinessStatusCode.Success) + try + { + double receipt = Convert.ToDouble(Convert.ToDecimal(txtReceipts.Text)); + double vipPrice = Convert.ToDouble(Convert.ToDecimal(lblVIPPrice.Text)); + lblChange.Text = Decimal.Parse((receipt - vipPrice).ToString()).ToString("#,##0.00"); + } + catch + { + NotificationService.ShowWarning("非法输入,请重新输入!"); + txtReceipts.Clear(); + txtReceipts.Focus(); + return; + } + } + else { - UIMessageBox.ShowError($"{ApiConstants.EnergyManagement_SelectEnergyManagementInfo}+接口服务异常,请提交Issue或尝试更新版本!"); + lblChange.Text = "-" + lblGetReceipts.Text; + return; } - - List energys = energyManagements.Data.Items; - var listTableData = new List(); - - energys = energys.OrderByDescending(a => a.StartDate).ToList(); - - TableComHelper tableComHelper = new TableComHelper(); - listTableData = tableComHelper.ConvertToAntdItems(energys); - - return listTableData; } - - } } diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutForm.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutDetail.resx similarity index 100% rename from EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutForm.resx rename to EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutDetail.resx diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutForm.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutForm.Designer.cs deleted file mode 100644 index 0509194..0000000 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutForm.Designer.cs +++ /dev/null @@ -1,680 +0,0 @@ -namespace EOM.TSHotelManagement.FormUI -{ - partial class FrmCheckOutForm - { - /// - /// Required designer variable. - /// - private System.ComponentModel.IContainer components = null; - - /// - /// Clean up any resources being used. - /// - /// true if managed resources should be disposed; otherwise, false. - protected override void Dispose(bool disposing) - { - if (disposing && (components != null)) - { - components.Dispose(); - } - base.Dispose(disposing); - } - - #region Windows Form Designer generated code - - /// - /// Required method for Designer support - do not modify - /// the contents of this method with the code editor. - /// - private void InitializeComponent() - { - System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmCheckOutForm)); - lblVIPPrice = new Label(); - label15 = new Label(); - lblDay = new Label(); - lable00 = new Label(); - label29 = new Label(); - lblVIP = new Label(); - label25 = new Label(); - label27 = new Label(); - label28 = new Label(); - lblChange = new Label(); - label21 = new Label(); - lblGetReceipts = new Label(); - label1 = new Label(); - label24 = new Label(); - label17 = new Label(); - label18 = new Label(); - label2 = new Label(); - label3 = new Label(); - label4 = new Label(); - label5 = new Label(); - label16 = new Label(); - label22 = new Label(); - label30 = new Label(); - label31 = new Label(); - label32 = new Label(); - uiTabControlMenu2 = new Sunny.UI.UITabControlMenu(); - tabPage1 = new TabPage(); - dtpCheckTime = new AntdUI.Input(); - txtRoomNo = new AntdUI.Input(); - CustoName = new AntdUI.Input(); - CustoNo = new AntdUI.Input(); - btnBalance = new AntdUI.Button(); - txtReceipts = new AntdUI.Input(); - btnPg = new AntdUI.Pagination(); - dgvSpendList = new AntdUI.Table(); - tabPage2 = new TabPage(); - txtCustomerAddress = new AntdUI.Input(); - txtDateOfBirth = new AntdUI.Input(); - txtCustomerGender = new AntdUI.Input(); - txtCustomerName = new AntdUI.Input(); - txtCustomerNumber = new AntdUI.Input(); - txtTel = new AntdUI.Input(); - txtIdCardNumber = new AntdUI.Input(); - txtPassportName = new AntdUI.Input(); - txtCustomerType = new AntdUI.Input(); - tabPage3 = new TabPage(); - dgvWti = new AntdUI.Table(); - uiTabControlMenu2.SuspendLayout(); - tabPage1.SuspendLayout(); - tabPage2.SuspendLayout(); - tabPage3.SuspendLayout(); - SuspendLayout(); - // - // lblVIPPrice - // - lblVIPPrice.AutoSize = true; - lblVIPPrice.Font = new Font("Microsoft Sans Serif", 12F, FontStyle.Regular, GraphicsUnit.Point, 0); - lblVIPPrice.Location = new Point(509, 394); - lblVIPPrice.Name = "lblVIPPrice"; - lblVIPPrice.Size = new Size(40, 20); - lblVIPPrice.TabIndex = 28; - lblVIPPrice.Text = "0.00"; - // - // label15 - // - label15.AutoSize = true; - label15.Font = new Font("Microsoft Sans Serif", 10.5F, FontStyle.Bold, GraphicsUnit.Point, 0); - label15.ForeColor = Color.Red; - label15.Location = new Point(7, 525); - label15.Name = "label15"; - label15.Size = new Size(273, 17); - label15.TabIndex = 11; - label15.Text = "Tips:请提醒客人不要忘记带齐行李哦~"; - // - // lblDay - // - lblDay.AutoSize = true; - lblDay.Font = new Font("Microsoft Sans Serif", 15F, FontStyle.Regular, GraphicsUnit.Point, 0); - lblDay.Location = new Point(593, 76); - lblDay.Name = "lblDay"; - lblDay.Size = new Size(45, 25); - lblDay.TabIndex = 114; - lblDay.Text = "Null"; - // - // lable00 - // - lable00.AutoSize = true; - lable00.Font = new Font("Microsoft Sans Serif", 12F, FontStyle.Regular, GraphicsUnit.Point, 0); - lable00.Location = new Point(422, 394); - lable00.Name = "lable00"; - lable00.Size = new Size(89, 20); - lable00.TabIndex = 26; - lable00.Text = "应付金额:"; - // - // label29 - // - label29.AutoSize = true; - label29.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label29.Location = new Point(572, 24); - label29.Name = "label29"; - label29.Size = new Size(88, 25); - label29.TabIndex = 113; - label29.Text = "已住天数"; - // - // lblVIP - // - lblVIP.AutoSize = true; - lblVIP.Font = new Font("Microsoft Sans Serif", 12F, FontStyle.Regular, GraphicsUnit.Point, 0); - lblVIP.Location = new Point(508, 362); - lblVIP.Name = "lblVIP"; - lblVIP.Size = new Size(73, 20); - lblVIP.TabIndex = 24; - lblVIP.Text = "不 打 折"; - // - // label25 - // - label25.AutoSize = true; - label25.Font = new Font("Microsoft Sans Serif", 12F, FontStyle.Regular, GraphicsUnit.Point, 0); - label25.Location = new Point(422, 362); - label25.Name = "label25"; - label25.Size = new Size(89, 20); - label25.TabIndex = 23; - label25.Text = "会员折扣:"; - // - // label27 - // - label27.AutoSize = true; - label27.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label27.Location = new Point(285, 76); - label27.Name = "label27"; - label27.Size = new Size(88, 25); - label27.TabIndex = 110; - label27.Text = "房间编号"; - // - // label28 - // - label28.AutoSize = true; - label28.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label28.Location = new Point(285, 24); - label28.Name = "label28"; - label28.Size = new Size(88, 25); - label28.TabIndex = 109; - label28.Text = "入住时间"; - // - // lblChange - // - lblChange.AutoSize = true; - lblChange.Font = new Font("Microsoft Sans Serif", 12F, FontStyle.Regular, GraphicsUnit.Point, 0); - lblChange.Location = new Point(509, 458); - lblChange.Name = "lblChange"; - lblChange.Size = new Size(40, 20); - lblChange.TabIndex = 21; - lblChange.Text = "0.00"; - // - // label21 - // - label21.AutoSize = true; - label21.Font = new Font("Microsoft Sans Serif", 12F, FontStyle.Regular, GraphicsUnit.Point, 0); - label21.Location = new Point(421, 458); - label21.Name = "label21"; - label21.Size = new Size(89, 20); - label21.TabIndex = 20; - label21.Text = "找 零:"; - // - // lblGetReceipts - // - lblGetReceipts.AutoSize = true; - lblGetReceipts.Font = new Font("Microsoft Sans Serif", 12F, FontStyle.Regular, GraphicsUnit.Point, 0); - lblGetReceipts.Location = new Point(509, 330); - lblGetReceipts.Name = "lblGetReceipts"; - lblGetReceipts.Size = new Size(40, 20); - lblGetReceipts.TabIndex = 19; - lblGetReceipts.Text = "0.00"; - // - // label1 - // - label1.AutoSize = true; - label1.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label1.Location = new Point(7, 76); - label1.Name = "label1"; - label1.Size = new Size(88, 25); - label1.TabIndex = 106; - label1.Text = "客户姓名"; - // - // label24 - // - label24.AutoSize = true; - label24.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label24.Location = new Point(7, 24); - label24.Name = "label24"; - label24.Size = new Size(88, 25); - label24.TabIndex = 105; - label24.Text = "客户编号"; - // - // label17 - // - label17.AutoSize = true; - label17.Font = new Font("Microsoft Sans Serif", 12F, FontStyle.Regular, GraphicsUnit.Point, 0); - label17.Location = new Point(421, 426); - label17.Name = "label17"; - label17.Size = new Size(89, 20); - label17.TabIndex = 14; - label17.Text = "实收金额:"; - // - // label18 - // - label18.AutoSize = true; - label18.Font = new Font("Microsoft Sans Serif", 12F, FontStyle.Regular, GraphicsUnit.Point, 0); - label18.Location = new Point(422, 330); - label18.Name = "label18"; - label18.Size = new Size(89, 20); - label18.TabIndex = 15; - label18.Text = "消费总额:"; - // - // label2 - // - label2.AutoSize = true; - label2.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label2.Location = new Point(25, 234); - label2.Name = "label2"; - label2.Size = new Size(88, 25); - label2.TabIndex = 115; - label2.Text = "居住地址"; - // - // label3 - // - label3.AutoSize = true; - label3.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label3.Location = new Point(344, 179); - label3.Name = "label3"; - label3.Size = new Size(88, 25); - label3.TabIndex = 114; - label3.Text = "联系方式"; - // - // label4 - // - label4.AutoSize = true; - label4.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label4.Location = new Point(344, 128); - label4.Name = "label4"; - label4.Size = new Size(88, 25); - label4.TabIndex = 113; - label4.Text = "证件号码"; - // - // label5 - // - label5.AutoSize = true; - label5.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label5.Location = new Point(344, 77); - label5.Name = "label5"; - label5.Size = new Size(88, 25); - label5.TabIndex = 112; - label5.Text = "证件类型"; - // - // label16 - // - label16.AutoSize = true; - label16.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label16.Location = new Point(344, 26); - label16.Name = "label16"; - label16.Size = new Size(88, 25); - label16.TabIndex = 111; - label16.Text = "客户类型"; - // - // label22 - // - label22.AutoSize = true; - label22.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label22.Location = new Point(27, 182); - label22.Name = "label22"; - label22.Size = new Size(88, 25); - label22.TabIndex = 110; - label22.Text = "出生日期"; - // - // label30 - // - label30.AutoSize = true; - label30.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label30.Location = new Point(27, 130); - label30.Name = "label30"; - label30.Size = new Size(86, 25); - label30.TabIndex = 109; - label30.Text = "性 别"; - // - // label31 - // - label31.AutoSize = true; - label31.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label31.Location = new Point(27, 78); - label31.Name = "label31"; - label31.Size = new Size(88, 25); - label31.TabIndex = 108; - label31.Text = "客户姓名"; - // - // label32 - // - label32.AutoSize = true; - label32.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label32.Location = new Point(27, 26); - label32.Name = "label32"; - label32.Size = new Size(88, 25); - label32.TabIndex = 107; - label32.Text = "客户编号"; - // - // uiTabControlMenu2 - // - uiTabControlMenu2.Alignment = TabAlignment.Left; - uiTabControlMenu2.Controls.Add(tabPage1); - uiTabControlMenu2.Controls.Add(tabPage2); - uiTabControlMenu2.Controls.Add(tabPage3); - uiTabControlMenu2.DrawMode = TabDrawMode.OwnerDrawFixed; - uiTabControlMenu2.Font = new Font("宋体", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); - uiTabControlMenu2.Location = new Point(3, 38); - uiTabControlMenu2.MenuStyle = Sunny.UI.UIMenuStyle.Custom; - uiTabControlMenu2.Multiline = true; - uiTabControlMenu2.Name = "uiTabControlMenu2"; - uiTabControlMenu2.SelectedIndex = 0; - uiTabControlMenu2.Size = new Size(865, 550); - uiTabControlMenu2.SizeMode = TabSizeMode.Fixed; - uiTabControlMenu2.TabBackColor = Color.FromArgb(235, 243, 255); - uiTabControlMenu2.TabIndex = 15; - uiTabControlMenu2.TabSelectedColor = Color.Snow; - // - // tabPage1 - // - tabPage1.Controls.Add(dtpCheckTime); - tabPage1.Controls.Add(txtRoomNo); - tabPage1.Controls.Add(CustoName); - tabPage1.Controls.Add(CustoNo); - tabPage1.Controls.Add(btnBalance); - tabPage1.Controls.Add(txtReceipts); - tabPage1.Controls.Add(btnPg); - tabPage1.Controls.Add(dgvSpendList); - tabPage1.Controls.Add(label24); - tabPage1.Controls.Add(lblVIPPrice); - tabPage1.Controls.Add(label18); - tabPage1.Controls.Add(label15); - tabPage1.Controls.Add(label17); - tabPage1.Controls.Add(lblDay); - tabPage1.Controls.Add(label1); - tabPage1.Controls.Add(lable00); - tabPage1.Controls.Add(lblGetReceipts); - tabPage1.Controls.Add(label29); - tabPage1.Controls.Add(lblVIP); - tabPage1.Controls.Add(label21); - tabPage1.Controls.Add(label25); - tabPage1.Controls.Add(lblChange); - tabPage1.Controls.Add(label28); - tabPage1.Controls.Add(label27); - tabPage1.Location = new Point(201, 0); - tabPage1.Name = "tabPage1"; - tabPage1.Size = new Size(664, 550); - tabPage1.TabIndex = 0; - tabPage1.Text = "退房结算"; - tabPage1.UseVisualStyleBackColor = true; - // - // dtpCheckTime - // - dtpCheckTime.Font = new Font("Microsoft YaHei UI", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); - dtpCheckTime.Location = new Point(376, 16); - dtpCheckTime.Name = "dtpCheckTime"; - dtpCheckTime.PlaceholderText = ""; - dtpCheckTime.ReadOnly = true; - dtpCheckTime.Size = new Size(180, 42); - dtpCheckTime.TabIndex = 161; - // - // txtRoomNo - // - txtRoomNo.Font = new Font("Microsoft YaHei UI", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); - txtRoomNo.Location = new Point(376, 67); - txtRoomNo.Name = "txtRoomNo"; - txtRoomNo.PlaceholderText = ""; - txtRoomNo.ReadOnly = true; - txtRoomNo.Size = new Size(180, 42); - txtRoomNo.TabIndex = 160; - // - // CustoName - // - CustoName.Font = new Font("Microsoft YaHei UI", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); - CustoName.Location = new Point(98, 67); - CustoName.Name = "CustoName"; - CustoName.PlaceholderText = ""; - CustoName.ReadOnly = true; - CustoName.Size = new Size(180, 42); - CustoName.TabIndex = 159; - // - // CustoNo - // - CustoNo.Font = new Font("Microsoft YaHei UI", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); - CustoNo.Location = new Point(98, 16); - CustoNo.Name = "CustoNo"; - CustoNo.PlaceholderText = ""; - CustoNo.ReadOnly = true; - CustoNo.Size = new Size(180, 42); - CustoNo.TabIndex = 158; - // - // btnBalance - // - btnBalance.Location = new Point(422, 493); - btnBalance.Name = "btnBalance"; - btnBalance.Size = new Size(183, 48); - btnBalance.TabIndex = 157; - btnBalance.Text = "结 算"; - btnBalance.Type = AntdUI.TTypeMini.Primary; - btnBalance.Click += btnBalance_Click; - // - // txtReceipts - // - txtReceipts.Font = new Font("Microsoft YaHei UI", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); - txtReceipts.HandCursor = Cursors.IBeam; - txtReceipts.Location = new Point(508, 424); - txtReceipts.Name = "txtReceipts"; - txtReceipts.PlaceholderText = ""; - txtReceipts.Radius = 0; - txtReceipts.Size = new Size(97, 29); - txtReceipts.TabIndex = 156; - txtReceipts.TextChanged += txtReceipts_TextChanged; - // - // btnPg - // - btnPg.Current = 0; - btnPg.Location = new Point(7, 330); - btnPg.Name = "btnPg"; - btnPg.PageSize = 15; - btnPg.ShowSizeChanger = true; - btnPg.Size = new Size(403, 25); - btnPg.TabIndex = 135; - btnPg.Total = 1000000; - btnPg.ValueChanged += btnPg_ValueChanged; - btnPg.ShowTotalChanged += btnPg_ShowTotalChanged; - // - // dgvSpendList - // - dgvSpendList.Location = new Point(7, 113); - dgvSpendList.Name = "dgvSpendList"; - dgvSpendList.Size = new Size(654, 208); - dgvSpendList.TabIndex = 118; - dgvSpendList.Text = "table1"; - // - // tabPage2 - // - tabPage2.Controls.Add(txtCustomerAddress); - tabPage2.Controls.Add(txtDateOfBirth); - tabPage2.Controls.Add(txtCustomerGender); - tabPage2.Controls.Add(txtCustomerName); - tabPage2.Controls.Add(txtCustomerNumber); - tabPage2.Controls.Add(txtTel); - tabPage2.Controls.Add(txtIdCardNumber); - tabPage2.Controls.Add(txtPassportName); - tabPage2.Controls.Add(txtCustomerType); - tabPage2.Controls.Add(label32); - tabPage2.Controls.Add(label31); - tabPage2.Controls.Add(label30); - tabPage2.Controls.Add(label22); - tabPage2.Controls.Add(label16); - tabPage2.Controls.Add(label5); - tabPage2.Controls.Add(label4); - tabPage2.Controls.Add(label3); - tabPage2.Controls.Add(label2); - tabPage2.Location = new Point(201, 0); - tabPage2.Name = "tabPage2"; - tabPage2.Size = new Size(664, 550); - tabPage2.TabIndex = 1; - tabPage2.Text = "客户信息"; - tabPage2.UseVisualStyleBackColor = true; - // - // txtCustomerAddress - // - txtCustomerAddress.Font = new Font("Microsoft YaHei UI", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); - txtCustomerAddress.Location = new Point(134, 221); - txtCustomerAddress.Name = "txtCustomerAddress"; - txtCustomerAddress.PlaceholderText = ""; - txtCustomerAddress.ReadOnly = true; - txtCustomerAddress.Size = new Size(506, 42); - txtCustomerAddress.TabIndex = 158; - // - // txtDateOfBirth - // - txtDateOfBirth.Font = new Font("Microsoft YaHei UI", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); - txtDateOfBirth.Location = new Point(134, 170); - txtDateOfBirth.Name = "txtDateOfBirth"; - txtDateOfBirth.PlaceholderText = ""; - txtDateOfBirth.ReadOnly = true; - txtDateOfBirth.Size = new Size(203, 42); - txtDateOfBirth.TabIndex = 157; - // - // txtCustomerGender - // - txtCustomerGender.Font = new Font("Microsoft YaHei UI", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); - txtCustomerGender.Location = new Point(134, 119); - txtCustomerGender.Name = "txtCustomerGender"; - txtCustomerGender.PlaceholderText = ""; - txtCustomerGender.ReadOnly = true; - txtCustomerGender.Size = new Size(203, 42); - txtCustomerGender.TabIndex = 156; - // - // txtCustomerName - // - txtCustomerName.Font = new Font("Microsoft YaHei UI", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); - txtCustomerName.Location = new Point(134, 68); - txtCustomerName.Name = "txtCustomerName"; - txtCustomerName.PlaceholderText = ""; - txtCustomerName.ReadOnly = true; - txtCustomerName.Size = new Size(203, 42); - txtCustomerName.TabIndex = 155; - // - // txtCustomerNumber - // - txtCustomerNumber.Font = new Font("Microsoft YaHei UI", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); - txtCustomerNumber.Location = new Point(134, 17); - txtCustomerNumber.Name = "txtCustomerNumber"; - txtCustomerNumber.PlaceholderText = ""; - txtCustomerNumber.ReadOnly = true; - txtCustomerNumber.Size = new Size(203, 42); - txtCustomerNumber.TabIndex = 154; - // - // txtTel - // - txtTel.Font = new Font("Microsoft YaHei UI", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); - txtTel.Location = new Point(437, 170); - txtTel.Name = "txtTel"; - txtTel.PlaceholderText = ""; - txtTel.ReadOnly = true; - txtTel.Size = new Size(203, 42); - txtTel.TabIndex = 153; - // - // txtIdCardNumber - // - txtIdCardNumber.Font = new Font("Microsoft YaHei UI", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); - txtIdCardNumber.Location = new Point(437, 119); - txtIdCardNumber.Name = "txtIdCardNumber"; - txtIdCardNumber.PlaceholderText = ""; - txtIdCardNumber.ReadOnly = true; - txtIdCardNumber.Size = new Size(203, 42); - txtIdCardNumber.TabIndex = 152; - // - // txtPassportName - // - txtPassportName.Font = new Font("Microsoft YaHei UI", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); - txtPassportName.Location = new Point(437, 68); - txtPassportName.Name = "txtPassportName"; - txtPassportName.PlaceholderText = ""; - txtPassportName.ReadOnly = true; - txtPassportName.Size = new Size(203, 42); - txtPassportName.TabIndex = 151; - // - // txtCustomerType - // - txtCustomerType.Font = new Font("Microsoft YaHei UI", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); - txtCustomerType.Location = new Point(437, 17); - txtCustomerType.Name = "txtCustomerType"; - txtCustomerType.PlaceholderText = ""; - txtCustomerType.ReadOnly = true; - txtCustomerType.Size = new Size(203, 42); - txtCustomerType.TabIndex = 150; - // - // tabPage3 - // - tabPage3.Controls.Add(dgvWti); - tabPage3.Location = new Point(201, 0); - tabPage3.Name = "tabPage3"; - tabPage3.Size = new Size(664, 550); - tabPage3.TabIndex = 2; - tabPage3.Text = "历史水电情况"; - tabPage3.UseVisualStyleBackColor = true; - // - // dgvWti - // - dgvWti.Location = new Point(5, 7); - dgvWti.Name = "dgvWti"; - dgvWti.Size = new Size(654, 502); - dgvWti.TabIndex = 136; - dgvWti.Text = "table1"; - // - // FrmCheckOutForm - // - AutoScaleMode = AutoScaleMode.None; - BackColor = Color.FromArgb(235, 243, 255); - ClientSize = new Size(873, 593); - Controls.Add(uiTabControlMenu2); - Icon = (Icon)resources.GetObject("$this.Icon"); - MaximizeBox = false; - MinimizeBox = false; - Name = "FrmCheckOutForm"; - ShowTitleIcon = true; - Text = "退房结算"; - ZoomScaleRect = new Rectangle(15, 15, 888, 603); - Load += FrmCheckOutForm_Load; - MouseDown += FrmCheckOutForm_MouseDown; - MouseMove += FrmCheckOutForm_MouseMove; - uiTabControlMenu2.ResumeLayout(false); - tabPage1.ResumeLayout(false); - tabPage1.PerformLayout(); - tabPage2.ResumeLayout(false); - tabPage2.PerformLayout(); - tabPage3.ResumeLayout(false); - ResumeLayout(false); - } - - #endregion - private System.Windows.Forms.Label lblVIPPrice; - private System.Windows.Forms.Label label15; - private System.Windows.Forms.Label lblDay; - private System.Windows.Forms.Label lable00; - private System.Windows.Forms.Label label29; - private System.Windows.Forms.Label lblVIP; - private System.Windows.Forms.Label label25; - private System.Windows.Forms.Label label27; - private System.Windows.Forms.Label label28; - private System.Windows.Forms.Label lblChange; - private System.Windows.Forms.Label label21; - private System.Windows.Forms.Label lblGetReceipts; - private System.Windows.Forms.Label label1; - private System.Windows.Forms.Label label24; - private System.Windows.Forms.Label label17; - private System.Windows.Forms.Label label18; - private System.Windows.Forms.Label label2; - private System.Windows.Forms.Label label3; - private System.Windows.Forms.Label label4; - private System.Windows.Forms.Label label5; - private System.Windows.Forms.Label label16; - private System.Windows.Forms.Label label22; - private System.Windows.Forms.Label label30; - private System.Windows.Forms.Label label31; - private System.Windows.Forms.Label label32; - private Sunny.UI.UITabControlMenu uiTabControlMenu2; - private System.Windows.Forms.TabPage tabPage1; - private System.Windows.Forms.TabPage tabPage2; - private System.Windows.Forms.TabPage tabPage3; - private AntdUI.Table dgvSpendList; - private AntdUI.Pagination btnPg; - private AntdUI.Input txtTel; - private AntdUI.Input txtIdCardNumber; - private AntdUI.Input txtPassportName; - private AntdUI.Input txtCustomerType; - private AntdUI.Input txtCustomerAddress; - private AntdUI.Input txtDateOfBirth; - private AntdUI.Input txtCustomerGender; - private AntdUI.Input txtCustomerName; - private AntdUI.Input txtCustomerNumber; - private AntdUI.Input txtReceipts; - private AntdUI.Button btnBalance; - private AntdUI.Input txtRoomNo; - private AntdUI.Input CustoName; - private AntdUI.Input CustoNo; - private AntdUI.Input dtpCheckTime; - private AntdUI.Table dgvWti; - } -} \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerInfo.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerInfo.Designer.cs index 8d14dd4..2958167 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerInfo.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerInfo.Designer.cs @@ -29,349 +29,272 @@ private void InitializeComponent() { System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmCustomerInfo)); - this.cbCustoType = new Sunny.UI.UIComboBox(); - this.cbPassportType = new Sunny.UI.UIComboBox(); - this.cbSex = new Sunny.UI.UIComboBox(); - this.txtCustoNo = new Sunny.UI.UITextBox(); - this.txtCustoName = new Sunny.UI.UITextBox(); - this.txtCardID = new Sunny.UI.UITextBox(); - this.txtCustoTel = new Sunny.UI.UITextBox(); - this.dtpBirthday = new Sunny.UI.UIDatePicker(); - this.txtCustoAdress = new Sunny.UI.UITextBox(); - this.label1 = new System.Windows.Forms.Label(); - this.label2 = new System.Windows.Forms.Label(); - this.label3 = new System.Windows.Forms.Label(); - this.label4 = new System.Windows.Forms.Label(); - this.label5 = new System.Windows.Forms.Label(); - this.label15 = new System.Windows.Forms.Label(); - this.label16 = new System.Windows.Forms.Label(); - this.label17 = new System.Windows.Forms.Label(); - this.label18 = new System.Windows.Forms.Label(); - this.SuspendLayout(); - // - // cbCustoType - // - this.cbCustoType.DataSource = null; - this.cbCustoType.DropDownStyle = Sunny.UI.UIDropDownStyle.DropDownList; - this.cbCustoType.FillColor = System.Drawing.Color.White; - this.cbCustoType.Font = new System.Drawing.Font("微软雅黑", 15.75F); - this.cbCustoType.Location = new System.Drawing.Point(512, 49); - this.cbCustoType.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); - this.cbCustoType.MinimumSize = new System.Drawing.Size(63, 0); - this.cbCustoType.Name = "cbCustoType"; - this.cbCustoType.Padding = new System.Windows.Forms.Padding(0, 0, 30, 2); - this.cbCustoType.Radius = 20; - this.cbCustoType.ReadOnly = true; - this.cbCustoType.Size = new System.Drawing.Size(250, 35); - this.cbCustoType.Style = Sunny.UI.UIStyle.Custom; - this.cbCustoType.TabIndex = 128; - this.cbCustoType.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft; - this.cbCustoType.Watermark = ""; - // - // cbPassportType - // - this.cbPassportType.DataSource = null; - this.cbPassportType.DropDownStyle = Sunny.UI.UIDropDownStyle.DropDownList; - this.cbPassportType.FillColor = System.Drawing.Color.White; - this.cbPassportType.Font = new System.Drawing.Font("微软雅黑", 15.75F); - this.cbPassportType.Location = new System.Drawing.Point(512, 100); - this.cbPassportType.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); - this.cbPassportType.MinimumSize = new System.Drawing.Size(63, 0); - this.cbPassportType.Name = "cbPassportType"; - this.cbPassportType.Padding = new System.Windows.Forms.Padding(0, 0, 30, 2); - this.cbPassportType.Radius = 20; - this.cbPassportType.ReadOnly = true; - this.cbPassportType.Size = new System.Drawing.Size(250, 35); - this.cbPassportType.Style = Sunny.UI.UIStyle.Custom; - this.cbPassportType.TabIndex = 127; - this.cbPassportType.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft; - // - // cbSex - // - this.cbSex.DataSource = null; - this.cbSex.DropDownStyle = Sunny.UI.UIDropDownStyle.DropDownList; - this.cbSex.FillColor = System.Drawing.Color.White; - this.cbSex.Font = new System.Drawing.Font("微软雅黑", 15.75F); - this.cbSex.Location = new System.Drawing.Point(136, 154); - this.cbSex.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); - this.cbSex.MinimumSize = new System.Drawing.Size(63, 0); - this.cbSex.Name = "cbSex"; - this.cbSex.Padding = new System.Windows.Forms.Padding(0, 0, 30, 2); - this.cbSex.Radius = 20; - this.cbSex.ReadOnly = true; - this.cbSex.Size = new System.Drawing.Size(250, 35); - this.cbSex.Style = Sunny.UI.UIStyle.Custom; - this.cbSex.TabIndex = 126; - this.cbSex.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft; - // - // txtCustoNo - // - this.txtCustoNo.Cursor = System.Windows.Forms.Cursors.IBeam; - this.txtCustoNo.FillColor = System.Drawing.Color.White; - this.txtCustoNo.Font = new System.Drawing.Font("微软雅黑", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.txtCustoNo.Location = new System.Drawing.Point(136, 50); - this.txtCustoNo.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); - this.txtCustoNo.Maximum = 2147483647D; - this.txtCustoNo.Minimum = -2147483648D; - this.txtCustoNo.MinimumSize = new System.Drawing.Size(1, 1); - this.txtCustoNo.Name = "txtCustoNo"; - this.txtCustoNo.Padding = new System.Windows.Forms.Padding(5); - this.txtCustoNo.Radius = 20; - this.txtCustoNo.ReadOnly = true; - this.txtCustoNo.Size = new System.Drawing.Size(250, 35); - this.txtCustoNo.Style = Sunny.UI.UIStyle.Custom; - this.txtCustoNo.StyleCustomMode = true; - this.txtCustoNo.TabIndex = 125; - this.txtCustoNo.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft; - // - // txtCustoName - // - this.txtCustoName.Cursor = System.Windows.Forms.Cursors.IBeam; - this.txtCustoName.FillColor = System.Drawing.Color.White; - this.txtCustoName.Font = new System.Drawing.Font("微软雅黑", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.txtCustoName.Location = new System.Drawing.Point(136, 102); - this.txtCustoName.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); - this.txtCustoName.Maximum = 2147483647D; - this.txtCustoName.Minimum = -2147483648D; - this.txtCustoName.MinimumSize = new System.Drawing.Size(1, 1); - this.txtCustoName.Name = "txtCustoName"; - this.txtCustoName.Padding = new System.Windows.Forms.Padding(5); - this.txtCustoName.Radius = 20; - this.txtCustoName.ReadOnly = true; - this.txtCustoName.Size = new System.Drawing.Size(250, 35); - this.txtCustoName.Style = Sunny.UI.UIStyle.Custom; - this.txtCustoName.StyleCustomMode = true; - this.txtCustoName.TabIndex = 124; - this.txtCustoName.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft; - // - // txtCardID - // - this.txtCardID.Cursor = System.Windows.Forms.Cursors.IBeam; - this.txtCardID.FillColor = System.Drawing.Color.White; - this.txtCardID.Font = new System.Drawing.Font("微软雅黑", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.txtCardID.Location = new System.Drawing.Point(512, 151); - this.txtCardID.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); - this.txtCardID.Maximum = 2147483647D; - this.txtCardID.Minimum = -2147483648D; - this.txtCardID.MinimumSize = new System.Drawing.Size(1, 1); - this.txtCardID.Name = "txtCardID"; - this.txtCardID.Padding = new System.Windows.Forms.Padding(5); - this.txtCardID.Radius = 20; - this.txtCardID.ReadOnly = true; - this.txtCardID.Size = new System.Drawing.Size(250, 35); - this.txtCardID.Style = Sunny.UI.UIStyle.Custom; - this.txtCardID.StyleCustomMode = true; - this.txtCardID.TabIndex = 123; - this.txtCardID.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft; - // - // txtCustoTel - // - this.txtCustoTel.Cursor = System.Windows.Forms.Cursors.IBeam; - this.txtCustoTel.FillColor = System.Drawing.Color.White; - this.txtCustoTel.Font = new System.Drawing.Font("微软雅黑", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.txtCustoTel.Location = new System.Drawing.Point(512, 202); - this.txtCustoTel.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); - this.txtCustoTel.Maximum = 2147483647D; - this.txtCustoTel.Minimum = -2147483648D; - this.txtCustoTel.MinimumSize = new System.Drawing.Size(1, 1); - this.txtCustoTel.Name = "txtCustoTel"; - this.txtCustoTel.Padding = new System.Windows.Forms.Padding(5); - this.txtCustoTel.Radius = 20; - this.txtCustoTel.ReadOnly = true; - this.txtCustoTel.Size = new System.Drawing.Size(250, 35); - this.txtCustoTel.Style = Sunny.UI.UIStyle.Custom; - this.txtCustoTel.StyleCustomMode = true; - this.txtCustoTel.TabIndex = 122; - this.txtCustoTel.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft; - // - // dtpBirthday - // - this.dtpBirthday.DropDownStyle = Sunny.UI.UIDropDownStyle.DropDownList; - this.dtpBirthday.FillColor = System.Drawing.Color.White; - this.dtpBirthday.Font = new System.Drawing.Font("Microsoft Sans Serif", 15.75F); - this.dtpBirthday.Location = new System.Drawing.Point(136, 206); - this.dtpBirthday.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); - this.dtpBirthday.MaxLength = 10; - this.dtpBirthday.MinimumSize = new System.Drawing.Size(63, 0); - this.dtpBirthday.Name = "dtpBirthday"; - this.dtpBirthday.Padding = new System.Windows.Forms.Padding(0, 0, 30, 2); - this.dtpBirthday.Radius = 20; - this.dtpBirthday.ReadOnly = true; - this.dtpBirthday.Size = new System.Drawing.Size(250, 31); - this.dtpBirthday.Style = Sunny.UI.UIStyle.Custom; - this.dtpBirthday.SymbolDropDown = 61555; - this.dtpBirthday.SymbolNormal = 61555; - this.dtpBirthday.TabIndex = 121; - this.dtpBirthday.Text = "2020-11-24"; - this.dtpBirthday.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft; - this.dtpBirthday.Value = new System.DateTime(2020, 11, 24, 22, 50, 36, 791); - // - // txtCustoAdress - // - this.txtCustoAdress.Cursor = System.Windows.Forms.Cursors.IBeam; - this.txtCustoAdress.FillColor = System.Drawing.Color.White; - this.txtCustoAdress.Font = new System.Drawing.Font("微软雅黑", 15.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.txtCustoAdress.Location = new System.Drawing.Point(134, 254); - this.txtCustoAdress.Margin = new System.Windows.Forms.Padding(4, 5, 4, 5); - this.txtCustoAdress.Maximum = 2147483647D; - this.txtCustoAdress.Minimum = -2147483648D; - this.txtCustoAdress.MinimumSize = new System.Drawing.Size(1, 1); - this.txtCustoAdress.Name = "txtCustoAdress"; - this.txtCustoAdress.Padding = new System.Windows.Forms.Padding(5); - this.txtCustoAdress.Radius = 20; - this.txtCustoAdress.ReadOnly = true; - this.txtCustoAdress.Size = new System.Drawing.Size(628, 35); - this.txtCustoAdress.Style = Sunny.UI.UIStyle.Custom; - this.txtCustoAdress.StyleCustomMode = true; - this.txtCustoAdress.TabIndex = 120; - this.txtCustoAdress.TextAlignment = System.Drawing.ContentAlignment.MiddleLeft; - // - // label1 - // - this.label1.AutoSize = true; - this.label1.Font = new System.Drawing.Font("微软雅黑", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.label1.Location = new System.Drawing.Point(27, 264); - this.label1.Name = "label1"; - this.label1.Size = new System.Drawing.Size(88, 25); - this.label1.TabIndex = 118; - this.label1.Text = "居住地址"; + txtCustomerAddress = new AntdUI.Input(); + txtDateOfBirth = new AntdUI.Input(); + txtCustomerGender = new AntdUI.Input(); + txtCustomerName = new AntdUI.Input(); + txtCustomerNumber = new AntdUI.Input(); + txtTel = new AntdUI.Input(); + txtIdCardNumber = new AntdUI.Input(); + txtPassportName = new AntdUI.Input(); + txtCustomerType = new AntdUI.Input(); + label32 = new Label(); + label31 = new Label(); + label30 = new Label(); + label22 = new Label(); + label16 = new Label(); + label5 = new Label(); + label4 = new Label(); + label3 = new Label(); + label2 = new Label(); + ucWindowHeader1 = new ucWindowHeader(); + SuspendLayout(); + // + // txtCustomerAddress + // + txtCustomerAddress.Font = new Font("Noto Sans SC", 12F); + txtCustomerAddress.Location = new Point(95, 239); + txtCustomerAddress.Name = "txtCustomerAddress"; + txtCustomerAddress.PlaceholderText = ""; + txtCustomerAddress.ReadOnly = true; + txtCustomerAddress.Size = new Size(506, 42); + txtCustomerAddress.TabIndex = 176; + // + // txtDateOfBirth + // + txtDateOfBirth.Font = new Font("Noto Sans SC", 12F); + txtDateOfBirth.Location = new Point(95, 190); + txtDateOfBirth.Name = "txtDateOfBirth"; + txtDateOfBirth.PlaceholderText = ""; + txtDateOfBirth.ReadOnly = true; + txtDateOfBirth.Size = new Size(203, 42); + txtDateOfBirth.TabIndex = 175; + // + // txtCustomerGender + // + txtCustomerGender.Font = new Font("Noto Sans SC", 12F); + txtCustomerGender.Location = new Point(95, 141); + txtCustomerGender.Name = "txtCustomerGender"; + txtCustomerGender.PlaceholderText = ""; + txtCustomerGender.ReadOnly = true; + txtCustomerGender.Size = new Size(203, 42); + txtCustomerGender.TabIndex = 174; + // + // txtCustomerName + // + txtCustomerName.Font = new Font("Noto Sans SC", 12F); + txtCustomerName.Location = new Point(95, 92); + txtCustomerName.Name = "txtCustomerName"; + txtCustomerName.PlaceholderText = ""; + txtCustomerName.ReadOnly = true; + txtCustomerName.Size = new Size(203, 42); + txtCustomerName.TabIndex = 173; + // + // txtCustomerNumber + // + txtCustomerNumber.Font = new Font("Noto Sans SC", 12F); + txtCustomerNumber.Location = new Point(95, 43); + txtCustomerNumber.Name = "txtCustomerNumber"; + txtCustomerNumber.PlaceholderText = ""; + txtCustomerNumber.ReadOnly = true; + txtCustomerNumber.Size = new Size(203, 42); + txtCustomerNumber.TabIndex = 172; + // + // txtTel + // + txtTel.Font = new Font("Noto Sans SC", 12F); + txtTel.Location = new Point(398, 190); + txtTel.Name = "txtTel"; + txtTel.PlaceholderText = ""; + txtTel.ReadOnly = true; + txtTel.Size = new Size(203, 42); + txtTel.TabIndex = 171; + // + // txtIdCardNumber + // + txtIdCardNumber.Font = new Font("Noto Sans SC", 12F); + txtIdCardNumber.Location = new Point(398, 141); + txtIdCardNumber.Name = "txtIdCardNumber"; + txtIdCardNumber.PlaceholderText = ""; + txtIdCardNumber.ReadOnly = true; + txtIdCardNumber.Size = new Size(203, 42); + txtIdCardNumber.TabIndex = 170; + // + // txtPassportName + // + txtPassportName.Font = new Font("Noto Sans SC", 12F); + txtPassportName.Location = new Point(398, 92); + txtPassportName.Name = "txtPassportName"; + txtPassportName.PlaceholderText = ""; + txtPassportName.ReadOnly = true; + txtPassportName.Size = new Size(203, 42); + txtPassportName.TabIndex = 169; + // + // txtCustomerType + // + txtCustomerType.Font = new Font("Noto Sans SC", 12F); + txtCustomerType.Location = new Point(398, 43); + txtCustomerType.Name = "txtCustomerType"; + txtCustomerType.PlaceholderText = ""; + txtCustomerType.ReadOnly = true; + txtCustomerType.Size = new Size(203, 42); + txtCustomerType.TabIndex = 168; + // + // label32 + // + label32.AutoSize = true; + label32.Font = new Font("Noto Sans SC", 14.25F); + label32.Location = new Point(12, 54); + label32.Name = "label32"; + label32.Size = new Size(85, 19); + label32.TabIndex = 159; + label32.Text = "客户编号"; + // + // label31 + // + label31.AutoSize = true; + label31.Font = new Font("Noto Sans SC", 14.25F); + label31.Location = new Point(12, 103); + label31.Name = "label31"; + label31.Size = new Size(85, 19); + label31.TabIndex = 160; + label31.Text = "客户姓名"; + // + // label30 + // + label30.AutoSize = true; + label30.Font = new Font("Noto Sans SC", 14.25F); + label30.Location = new Point(12, 152); + label30.Name = "label30"; + label30.Size = new Size(87, 19); + label30.TabIndex = 161; + label30.Text = "性 别"; + // + // label22 + // + label22.AutoSize = true; + label22.Font = new Font("Noto Sans SC", 14.25F); + label22.Location = new Point(12, 201); + label22.Name = "label22"; + label22.Size = new Size(85, 19); + label22.TabIndex = 162; + label22.Text = "出生日期"; // - // label2 + // label16 // - this.label2.AutoSize = true; - this.label2.Font = new System.Drawing.Font("微软雅黑", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.label2.Location = new System.Drawing.Point(408, 209); - this.label2.Name = "label2"; - this.label2.Size = new System.Drawing.Size(88, 25); - this.label2.TabIndex = 117; - this.label2.Text = "联系方式"; + label16.AutoSize = true; + label16.Font = new Font("Noto Sans SC", 14.25F); + label16.Location = new Point(315, 54); + label16.Name = "label16"; + label16.Size = new Size(85, 19); + label16.TabIndex = 163; + label16.Text = "客户类型"; // - // label3 + // label5 // - this.label3.AutoSize = true; - this.label3.Font = new System.Drawing.Font("微软雅黑", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.label3.Location = new System.Drawing.Point(408, 158); - this.label3.Name = "label3"; - this.label3.Size = new System.Drawing.Size(88, 25); - this.label3.TabIndex = 116; - this.label3.Text = "证件号码"; + label5.AutoSize = true; + label5.Font = new Font("Noto Sans SC", 14.25F); + label5.Location = new Point(315, 103); + label5.Name = "label5"; + label5.Size = new Size(85, 19); + label5.TabIndex = 164; + label5.Text = "证件类型"; // // label4 // - this.label4.AutoSize = true; - this.label4.Font = new System.Drawing.Font("微软雅黑", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.label4.Location = new System.Drawing.Point(408, 107); - this.label4.Name = "label4"; - this.label4.Size = new System.Drawing.Size(88, 25); - this.label4.TabIndex = 115; - this.label4.Text = "证件类型"; - // - // label5 + label4.AutoSize = true; + label4.Font = new Font("Noto Sans SC", 14.25F); + label4.Location = new Point(315, 152); + label4.Name = "label4"; + label4.Size = new Size(85, 19); + label4.TabIndex = 165; + label4.Text = "证件号码"; // - this.label5.AutoSize = true; - this.label5.Font = new System.Drawing.Font("微软雅黑", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.label5.Location = new System.Drawing.Point(408, 56); - this.label5.Name = "label5"; - this.label5.Size = new System.Drawing.Size(88, 25); - this.label5.TabIndex = 114; - this.label5.Text = "客户类型"; - // - // label15 + // label3 // - this.label15.AutoSize = true; - this.label15.Font = new System.Drawing.Font("微软雅黑", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.label15.Location = new System.Drawing.Point(29, 212); - this.label15.Name = "label15"; - this.label15.Size = new System.Drawing.Size(88, 25); - this.label15.TabIndex = 113; - this.label15.Text = "出生日期"; + label3.AutoSize = true; + label3.Font = new Font("Noto Sans SC", 14.25F); + label3.Location = new Point(315, 201); + label3.Name = "label3"; + label3.Size = new Size(85, 19); + label3.TabIndex = 166; + label3.Text = "联系方式"; // - // label16 + // label2 // - this.label16.AutoSize = true; - this.label16.Font = new System.Drawing.Font("微软雅黑", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.label16.Location = new System.Drawing.Point(29, 160); - this.label16.Name = "label16"; - this.label16.Size = new System.Drawing.Size(74, 25); - this.label16.TabIndex = 112; - this.label16.Text = "性 别"; - // - // label17 - // - this.label17.AutoSize = true; - this.label17.Font = new System.Drawing.Font("微软雅黑", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.label17.Location = new System.Drawing.Point(29, 108); - this.label17.Name = "label17"; - this.label17.Size = new System.Drawing.Size(88, 25); - this.label17.TabIndex = 111; - this.label17.Text = "客户姓名"; - // - // label18 - // - this.label18.AutoSize = true; - this.label18.Font = new System.Drawing.Font("微软雅黑", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); - this.label18.Location = new System.Drawing.Point(29, 56); - this.label18.Name = "label18"; - this.label18.Size = new System.Drawing.Size(88, 25); - this.label18.TabIndex = 110; - this.label18.Text = "客户编号"; - // - // FrmSelectCustoInfo - // - this.AutoScaleDimensions = new System.Drawing.SizeF(10F, 21F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(235)))), ((int)(((byte)(243)))), ((int)(((byte)(255))))); - this.ClientSize = new System.Drawing.Size(787, 316); - this.Controls.Add(this.cbCustoType); - this.Controls.Add(this.cbPassportType); - this.Controls.Add(this.cbSex); - this.Controls.Add(this.txtCustoNo); - this.Controls.Add(this.txtCustoName); - this.Controls.Add(this.txtCardID); - this.Controls.Add(this.txtCustoTel); - this.Controls.Add(this.dtpBirthday); - this.Controls.Add(this.txtCustoAdress); - this.Controls.Add(this.label1); - this.Controls.Add(this.label2); - this.Controls.Add(this.label3); - this.Controls.Add(this.label4); - this.Controls.Add(this.label5); - this.Controls.Add(this.label15); - this.Controls.Add(this.label16); - this.Controls.Add(this.label17); - this.Controls.Add(this.label18); - this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); - this.MaximizeBox = false; - this.MinimizeBox = false; - this.Name = "FrmSelectCustoInfo"; - this.ShowIcon = true; - this.ShowTitleIcon = true; - this.Style = Sunny.UI.UIStyle.Custom; - this.Text = "客户信息"; - this.Load += new System.EventHandler(this.FrmSelectCustoInfo_Load); - this.ResumeLayout(false); - this.PerformLayout(); + label2.AutoSize = true; + label2.Font = new Font("Noto Sans SC", 14.25F); + label2.Location = new Point(10, 250); + label2.Name = "label2"; + label2.Size = new Size(85, 19); + label2.TabIndex = 167; + label2.Text = "居住地址"; + // + // ucWindowHeader1 + // + ucWindowHeader1.Location = new Point(0, 0); + ucWindowHeader1.Name = "ucWindowHeader1"; + ucWindowHeader1.Size = new Size(610, 35); + ucWindowHeader1.TabIndex = 177; + // + // FrmCustomerInfo + // + AutoScaleMode = AutoScaleMode.None; + BackColor = Color.FromArgb(235, 243, 255); + ClientSize = new Size(608, 292); + Controls.Add(ucWindowHeader1); + Controls.Add(txtCustomerAddress); + Controls.Add(txtDateOfBirth); + Controls.Add(txtCustomerGender); + Controls.Add(txtCustomerName); + Controls.Add(txtCustomerNumber); + Controls.Add(txtTel); + Controls.Add(txtIdCardNumber); + Controls.Add(txtPassportName); + Controls.Add(txtCustomerType); + Controls.Add(label32); + Controls.Add(label31); + Controls.Add(label30); + Controls.Add(label22); + Controls.Add(label16); + Controls.Add(label5); + Controls.Add(label4); + Controls.Add(label3); + Controls.Add(label2); + FormBorderStyle = FormBorderStyle.None; + Icon = (Icon)resources.GetObject("$this.Icon"); + MaximizeBox = false; + MinimizeBox = false; + Name = "FrmCustomerInfo"; + Resizable = false; + StartPosition = FormStartPosition.CenterScreen; + Text = "客户信息"; + Load += FrmSelectCustoInfo_Load; + ResumeLayout(false); + PerformLayout(); } #endregion - private Sunny.UI.UIComboBox cbCustoType; - private Sunny.UI.UIComboBox cbPassportType; - private Sunny.UI.UIComboBox cbSex; - private Sunny.UI.UITextBox txtCustoNo; - private Sunny.UI.UITextBox txtCustoName; - private Sunny.UI.UITextBox txtCardID; - private Sunny.UI.UITextBox txtCustoTel; - private Sunny.UI.UIDatePicker dtpBirthday; - private Sunny.UI.UITextBox txtCustoAdress; - private System.Windows.Forms.Label label1; - private System.Windows.Forms.Label label2; - private System.Windows.Forms.Label label3; - private System.Windows.Forms.Label label4; - private System.Windows.Forms.Label label5; - private System.Windows.Forms.Label label15; - private System.Windows.Forms.Label label16; - private System.Windows.Forms.Label label17; - private System.Windows.Forms.Label label18; + + private AntdUI.Input txtCustomerAddress; + private AntdUI.Input txtDateOfBirth; + private AntdUI.Input txtCustomerGender; + private AntdUI.Input txtCustomerName; + private AntdUI.Input txtCustomerNumber; + private AntdUI.Input txtTel; + private AntdUI.Input txtIdCardNumber; + private AntdUI.Input txtPassportName; + private AntdUI.Input txtCustomerType; + private Label label32; + private Label label31; + private Label label30; + private Label label22; + private Label label16; + private Label label5; + private Label label4; + private Label label3; + private Label label2; + private ucWindowHeader ucWindowHeader1; } } \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerInfo.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerInfo.cs index 7a17e9b..af59270 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerInfo.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerInfo.cs @@ -22,105 +22,49 @@ * */ +using AntdUI; using EOM.TSHotelManagement.Common; using EOM.TSHotelManagement.Common.Contract; -using Sunny.UI; namespace EOM.TSHotelManagement.FormUI { - public partial class FrmCustomerInfo : UIForm + public partial class FrmCustomerInfo : Window { - public FrmCustomerInfo() + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmCustomerInfo)); + public string CustomerNumber { get; set; } + public FrmCustomerInfo(string customerNumber) { InitializeComponent(); + CustomerNumber = customerNumber; + + ucWindowHeader1.ApplySettingsWithoutMinimize("查看用户信息", string.Empty, (Image)resources.GetObject("FrmCustomerInfo.Icon")!); } Dictionary dic = null; ResponseMsg result = null; - #region 存放客户信息类 - public static string co_CustoNo; - public static string co_RoomNo; - public static string co_CustoName; - public static string co_CustoBirthday; - public static string co_CustoSex; - public static string co_CustoTel; - public static string co_CustoPassportType; - public static string co_CustoAddress; - public static string co_CustoType; - public static string co_CustoID; - #endregion - private void FrmSelectCustoInfo_Load(object sender, EventArgs e) { - #region 加载客户类型信息 - result = HttpHelper.Request(ApiConstants.Base_SelectCustoTypeAllCanUse); - var customerTypes = HttpHelper.JsonToModel>(result.message); - if (customerTypes.Code != BusinessStatusCode.Success) - { - UIMessageBox.ShowError($"{ApiConstants.Base_SelectCustoTypeAllCanUse}+接口服务异常,请提交Issue或尝试更新版本!"); - return; - } - this.cbCustoType.DataSource = customerTypes.Data.Items; - this.cbCustoType.DisplayMember = nameof(ReadCustoTypeOutputDto.CustomerTypeName); - this.cbCustoType.ValueMember = nameof(ReadCustoTypeOutputDto.CustomerType); - this.cbCustoType.SelectedIndex = 0; - this.cbCustoType.ReadOnly = true; - #endregion - - #region 加载证件类型信息 - result = HttpHelper.Request(ApiConstants.Base_SelectPassPortTypeAllCanUse); - var passportTypes = HttpHelper.JsonToModel>(result.message); - if (passportTypes.Code != BusinessStatusCode.Success) - { - UIMessageBox.ShowError($"{ApiConstants.Base_SelectPassPortTypeAllCanUse}+接口服务异常,请提交Issue或尝试更新版本!"); - return; - } - this.cbPassportType.DataSource = passportTypes.Data.Items; - this.cbPassportType.DisplayMember = nameof(ReadPassportTypeOutputDto.PassportName); - this.cbPassportType.ValueMember = nameof(ReadPassportTypeOutputDto.PassportId); - this.cbPassportType.SelectedIndex = 0; - #endregion - - #region 加载性别信息 - dic = new Dictionary - { - { nameof(ReadGenderTypeInputDto.IsDelete) , "0" }, - { nameof(ReadGenderTypeInputDto.IgnorePaging) , "true" } - }; - result = HttpHelper.Request(ApiConstants.Base_SelectGenderTypeAll, dic); - var genderTypes = HttpHelper.JsonToModel>(result.message); - if (genderTypes.Code != BusinessStatusCode.Success) - { - UIMessageBox.ShowError($"{ApiConstants.Base_SelectGenderTypeAll}+接口服务异常,请提交Issue或尝试更新版本!"); - return; - } - this.cbSex.DataSource = genderTypes.Data.Items; - this.cbSex.DisplayMember = nameof(EnumDto.Description); - this.cbSex.ValueMember = nameof(EnumDto.Id); - this.cbSex.SelectedIndex = 0; - #endregion - - txtCustoNo.Text = ucRoom.rm_CustoNo; dic = new Dictionary() { - { nameof(ReadCustomerInputDto.CustomerNumber),txtCustoNo.Text.ToString() } + { nameof(ReadCustomerInputDto.CustomerNumber), CustomerNumber } }; result = HttpHelper.Request(ApiConstants.Customer_SelectCustoByInfo, dic); var c = HttpHelper.JsonToModel>(result.message); - if (c.Code != BusinessStatusCode.Success) + if (c.Success == false) { - UIMessageBox.ShowError($"{ApiConstants.Customer_SelectCustoByInfo}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Customer_SelectCustoByInfo}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - txtCustoAdress.Text = c.Data.CustomerAddress; - txtCustoName.Text = c.Data.CustomerName; - txtCardID.Text = c.Data.IdCardNumber; - txtCustoTel.Text = c.Data.CustomerPhoneNumber; - cbSex.Text = c.Data.CustomerGender == 1 ? "男" : "女"; - cbCustoType.SelectedValue = c.Data.CustomerType; - cbPassportType.SelectedValue = c.Data.PassportId; - dtpBirthday.Value = Convert.ToDateTime(c.Data.DateOfBirth); + txtCustomerNumber.Text = c.Data.CustomerNumber; + txtCustomerAddress.Text = c.Data.CustomerAddress; + txtCustomerName.Text = c.Data.CustomerName; + txtIdCardNumber.Text = c.Data.IdCardNumber; + txtTel.Text = c.Data.CustomerPhoneNumber; + txtCustomerGender.Text = c.Data.CustomerGender == 1 ? "男" : "女"; + txtCustomerType.Text = c.Data.CustomerTypeName; + txtPassportName.Text = c.Data.PassportName; + txtDateOfBirth.Text = c.Data.DateOfBirth.ToString("yyyy/MM/dd"); } } } diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerInfo.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerInfo.resx index e5b2e7f..dc88975 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerInfo.resx +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerInfo.resx @@ -1,17 +1,17 @@  - diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerManagement.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerManagement.Designer.cs index e5aeaf0..5c5658b 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerManagement.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerManagement.Designer.cs @@ -30,19 +30,19 @@ { components = new System.ComponentModel.Container(); toolTip1 = new ToolTip(components); - cmsCustoManager = new Sunny.UI.UIContextMenuStrip(); - tsmiCustoNo = new ToolStripMenuItem(); - uiLine1 = new Sunny.UI.UILine(); btnSerach = new AntdUI.Button(); btnAddCusto = new AntdUI.Button(); btnUpdCustomer = new AntdUI.Button(); dgvCustomerList = new AntdUI.Table(); + cmsCustomerAction = new ContextMenuStrip(components); + tsmiCustoNoCopy = new ToolStripMenuItem(); btnPg = new AntdUI.Pagination(); label1 = new AntdUI.Label(); label2 = new AntdUI.Label(); txtCustoName = new AntdUI.Input(); txtCustoNo = new AntdUI.Input(); - cmsCustoManager.SuspendLayout(); + divider1 = new AntdUI.Divider(); + cmsCustomerAction.SuspendLayout(); SuspendLayout(); // // toolTip1 @@ -50,35 +50,6 @@ toolTip1.ToolTipIcon = ToolTipIcon.Info; toolTip1.ToolTipTitle = "获取账号"; // - // cmsCustoManager - // - cmsCustoManager.BackColor = Color.FromArgb(243, 249, 255); - cmsCustoManager.Font = new Font("微软雅黑", 12F); - cmsCustoManager.Items.AddRange(new ToolStripItem[] { tsmiCustoNo }); - cmsCustoManager.Name = "cmsCustoManager"; - cmsCustoManager.Size = new Size(177, 30); - // - // tsmiCustoNo - // - tsmiCustoNo.Image = Properties.Resources.复制; - tsmiCustoNo.Name = "tsmiCustoNo"; - tsmiCustoNo.Size = new Size(176, 26); - tsmiCustoNo.Text = "复制用户编号"; - tsmiCustoNo.Click += tsmiCustoNo_Click; - // - // uiLine1 - // - uiLine1.BackColor = Color.Transparent; - uiLine1.Font = new Font("微软雅黑", 12F); - uiLine1.ForeColor = Color.FromArgb(48, 48, 48); - uiLine1.Location = new Point(772, 411); - uiLine1.Margin = new Padding(4); - uiLine1.MinimumSize = new Size(2, 3); - uiLine1.Name = "uiLine1"; - uiLine1.Size = new Size(291, 24); - uiLine1.TabIndex = 124; - uiLine1.Text = "右键可复制快速客户编号"; - // // btnSerach // btnSerach.Font = new Font("Microsoft YaHei UI", 12F); @@ -116,7 +87,8 @@ // dgvCustomerList // dgvCustomerList.Bordered = true; - dgvCustomerList.ContextMenuStrip = cmsCustoManager; + dgvCustomerList.ContextMenuStrip = cmsCustomerAction; + dgvCustomerList.Gap = 12; dgvCustomerList.Location = new Point(10, 7); dgvCustomerList.Name = "dgvCustomerList"; dgvCustomerList.Size = new Size(1053, 391); @@ -124,9 +96,21 @@ dgvCustomerList.CellClick += dgvCustomerList_CellClick; dgvCustomerList.CellDoubleClick += dgvCustomerList_CellDoubleClick; // + // cmsCustomerAction + // + cmsCustomerAction.Items.AddRange(new ToolStripItem[] { tsmiCustoNoCopy }); + cmsCustomerAction.Name = "cmsCustomerAction"; + cmsCustomerAction.Size = new Size(149, 26); + // + // tsmiCustoNoCopy + // + tsmiCustoNoCopy.Name = "tsmiCustoNoCopy"; + tsmiCustoNoCopy.Size = new Size(148, 22); + tsmiCustoNoCopy.Text = "复制用户编号"; + tsmiCustoNoCopy.Click += tsmiCustoNo_Click; + // // btnPg // - btnPg.Current = 0; btnPg.Location = new Point(10, 404); btnPg.Name = "btnPg"; btnPg.PageSize = 15; @@ -139,7 +123,7 @@ // // label1 // - label1.Font = new Font("Microsoft YaHei UI", 12.5F); + label1.Font = new Font("Noto Sans SC", 12.7499981F); label1.Location = new Point(283, 453); label1.Name = "label1"; label1.Size = new Size(86, 26); @@ -149,7 +133,7 @@ // // label2 // - label2.Font = new Font("Microsoft YaHei UI", 12.5F); + label2.Font = new Font("Noto Sans SC", 12.7499981F); label2.Location = new Point(12, 453); label2.Name = "label2"; label2.Size = new Size(86, 26); @@ -175,12 +159,23 @@ txtCustoNo.Size = new Size(173, 42); txtCustoNo.TabIndex = 149; // + // divider1 + // + divider1.Font = new Font("Noto Sans SC", 10.5F, FontStyle.Regular, GraphicsUnit.Point, 0); + divider1.Location = new Point(670, 406); + divider1.Name = "divider1"; + divider1.Size = new Size(393, 23); + divider1.TabIndex = 153; + divider1.Text = "右键可复制快速客户编号"; + divider1.Thickness = 1F; + // // FrmCustomerManager // AutoScaleDimensions = new SizeF(7F, 17F); AutoScaleMode = AutoScaleMode.Font; BackColor = Color.FromArgb(235, 243, 255); ClientSize = new Size(1072, 490); + Controls.Add(divider1); Controls.Add(label1); Controls.Add(label2); Controls.Add(txtCustoName); @@ -190,22 +185,18 @@ Controls.Add(btnUpdCustomer); Controls.Add(btnAddCusto); Controls.Add(btnSerach); - Controls.Add(uiLine1); FormBorderStyle = FormBorderStyle.None; Margin = new Padding(4); Name = "FrmCustomerManager"; StartPosition = FormStartPosition.CenterScreen; Text = "TS酒店管理系统"; Load += FrmCustomerManager_Load; - cmsCustoManager.ResumeLayout(false); + cmsCustomerAction.ResumeLayout(false); ResumeLayout(false); } #endregion private System.Windows.Forms.ToolTip toolTip1; - private Sunny.UI.UIContextMenuStrip cmsCustoManager; - private System.Windows.Forms.ToolStripMenuItem tsmiCustoNo; - private Sunny.UI.UILine uiLine1; private AntdUI.Button btnSerach; private AntdUI.Button btnAddCusto; private AntdUI.Button btnUpdCustomer; @@ -215,5 +206,8 @@ private AntdUI.Label label2; private AntdUI.Input txtCustoName; private AntdUI.Input txtCustoNo; + private ContextMenuStrip cmsCustomerAction; + private ToolStripMenuItem tsmiCustoNoCopy; + private AntdUI.Divider divider1; } } \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerManagement.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerManagement.cs index 81a5d2a..692e14f 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerManagement.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerManagement.cs @@ -101,7 +101,7 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Customer_SelectCustomers, dic); var customers = HttpHelper.JsonToModel>(result.message); - if (customers.Code != BusinessStatusCode.Success) + if (customers.Success == false) { AntdUI.Message.error(this, "SelectCustomers+接口服务异常,请提交Issue或尝试更新版本!"); return null!; @@ -141,7 +141,7 @@ namespace EOM.TSHotelManagement.FormUI } result = HttpHelper.Request(ApiConstants.Customer_SelectCustomers, dic); response = HttpHelper.JsonToModel>(result.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { AntdUI.Message.error(this, $"{ApiConstants.Customer_SelectCustomers}+接口服务异常,请提交Issue或尝试更新版本!"); return; diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerManagement.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerManagement.resx index 05f7066..8c8239e 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerManagement.resx +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerManagement.resx @@ -120,7 +120,7 @@ 17, 17 - - 179, 17 + + 125, 19 \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmEditInputs.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmEditInputs.Designer.cs index e401bcd..374c514 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmEditInputs.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmEditInputs.Designer.cs @@ -39,131 +39,120 @@ label3 = new Label(); label2 = new Label(); dtpDateOfBirth = new AntdUI.DatePicker(); - cboGender = new AntdUI.Dropdown(); txtCustomerName = new AntdUI.Input(); txtCustomerId = new AntdUI.Input(); - cboCustomerType = new AntdUI.Dropdown(); - cboPassportType = new AntdUI.Dropdown(); txtCustomerCardID = new AntdUI.Input(); txtCustomerTel = new AntdUI.Input(); txtCustomerAddress = new AntdUI.Input(); ucWindowHeader1 = new ucWindowHeader(); btnOk = new AntdUI.Button(); + cboGender = new AntdUI.Select(); + cboPassportType = new AntdUI.Select(); + cboCustomerType = new AntdUI.Select(); SuspendLayout(); // // label10 // label10.AutoSize = true; - label10.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label10.Location = new Point(38, 265); + label10.Font = new Font("Noto Sans SC", 14.2499981F); + label10.Location = new Point(9, 263); label10.Name = "label10"; - label10.Size = new Size(88, 25); + label10.Size = new Size(85, 19); label10.TabIndex = 115; label10.Text = "居住地址"; // // label9 // label9.AutoSize = true; - label9.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label9.Location = new Point(419, 210); + label9.Font = new Font("Noto Sans SC", 14.2499981F); + label9.Location = new Point(379, 212); label9.Name = "label9"; - label9.Size = new Size(88, 25); + label9.Size = new Size(85, 19); label9.TabIndex = 114; label9.Text = "联系方式"; // // label8 // label8.AutoSize = true; - label8.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label8.Location = new Point(419, 159); + label8.Font = new Font("Noto Sans SC", 14.2499981F); + label8.Location = new Point(379, 161); label8.Name = "label8"; - label8.Size = new Size(88, 25); + label8.Size = new Size(85, 19); label8.TabIndex = 113; label8.Text = "证件号码"; // // label7 // label7.AutoSize = true; - label7.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label7.Location = new Point(419, 108); + label7.Font = new Font("Noto Sans SC", 14.2499981F); + label7.Location = new Point(379, 110); label7.Name = "label7"; - label7.Size = new Size(88, 25); + label7.Size = new Size(85, 19); label7.TabIndex = 112; label7.Text = "证件类型"; // // label6 // label6.AutoSize = true; - label6.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label6.Location = new Point(419, 57); + label6.Font = new Font("Noto Sans SC", 14.2499981F); + label6.Location = new Point(379, 59); label6.Name = "label6"; - label6.Size = new Size(88, 25); + label6.Size = new Size(85, 19); label6.TabIndex = 111; label6.Text = "客户类型"; // // label5 // label5.AutoSize = true; - label5.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label5.Location = new Point(40, 213); + label5.Font = new Font("Noto Sans SC", 14.2499981F); + label5.Location = new Point(11, 212); label5.Name = "label5"; - label5.Size = new Size(88, 25); + label5.Size = new Size(85, 19); label5.TabIndex = 110; label5.Text = "出生日期"; // // label4 // label4.AutoSize = true; - label4.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label4.Location = new Point(40, 161); + label4.Font = new Font("Noto Sans SC", 14.2499981F); + label4.Location = new Point(11, 161); label4.Name = "label4"; - label4.Size = new Size(74, 25); + label4.Size = new Size(82, 19); label4.TabIndex = 109; - label4.Text = "性 别"; + label4.Text = "性 别"; // // label3 // label3.AutoSize = true; - label3.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label3.Location = new Point(40, 109); + label3.Font = new Font("Noto Sans SC", 14.2499981F); + label3.Location = new Point(11, 110); label3.Name = "label3"; - label3.Size = new Size(88, 25); + label3.Size = new Size(85, 19); label3.TabIndex = 108; label3.Text = "客户姓名"; // // label2 // label2.AutoSize = true; - label2.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label2.Location = new Point(40, 57); + label2.Font = new Font("Noto Sans SC", 14.2499981F); + label2.Location = new Point(11, 59); label2.Name = "label2"; - label2.Size = new Size(88, 25); + label2.Size = new Size(85, 19); label2.TabIndex = 107; label2.Text = "客户编号"; // // dtpDateOfBirth // dtpDateOfBirth.Font = new Font("Noto Sans SC", 10F); - dtpDateOfBirth.Location = new Point(144, 204); + dtpDateOfBirth.Location = new Point(94, 201); dtpDateOfBirth.Name = "dtpDateOfBirth"; dtpDateOfBirth.Size = new Size(252, 43); dtpDateOfBirth.TabIndex = 166; // - // cboGender - // - cboGender.DropDownArrow = true; - cboGender.Font = new Font("Noto Sans SC", 12F); - cboGender.Location = new Point(145, 156); - cboGender.Name = "cboGender"; - cboGender.Placement = AntdUI.TAlignFrom.Bottom; - cboGender.Size = new Size(251, 40); - cboGender.TabIndex = 165; - cboGender.ToggleType = AntdUI.TTypeMini.Info; - // // txtCustomerName // txtCustomerName.Font = new Font("Noto Sans SC", 12F); - txtCustomerName.Location = new Point(145, 103); + txtCustomerName.Location = new Point(95, 99); txtCustomerName.Name = "txtCustomerName"; txtCustomerName.Size = new Size(252, 45); txtCustomerName.TabIndex = 164; @@ -171,38 +160,16 @@ // txtCustomerId // txtCustomerId.Font = new Font("Noto Sans SC", 12F); - txtCustomerId.Location = new Point(145, 50); + txtCustomerId.Location = new Point(95, 48); txtCustomerId.Name = "txtCustomerId"; txtCustomerId.ReadOnly = true; txtCustomerId.Size = new Size(252, 45); txtCustomerId.TabIndex = 163; // - // cboCustomerType - // - cboCustomerType.DropDownArrow = true; - cboCustomerType.Font = new Font("Noto Sans SC", 12F); - cboCustomerType.Location = new Point(513, 50); - cboCustomerType.Name = "cboCustomerType"; - cboCustomerType.Placement = AntdUI.TAlignFrom.Bottom; - cboCustomerType.Size = new Size(250, 40); - cboCustomerType.TabIndex = 170; - cboCustomerType.ToggleType = AntdUI.TTypeMini.Info; - // - // cboPassportType - // - cboPassportType.DropDownArrow = true; - cboPassportType.Font = new Font("Noto Sans SC", 12F); - cboPassportType.Location = new Point(513, 99); - cboPassportType.Name = "cboPassportType"; - cboPassportType.Placement = AntdUI.TAlignFrom.Bottom; - cboPassportType.Size = new Size(250, 40); - cboPassportType.TabIndex = 169; - cboPassportType.ToggleType = AntdUI.TTypeMini.Info; - // // txtCustomerCardID // txtCustomerCardID.Font = new Font("Noto Sans SC", 12F); - txtCustomerCardID.Location = new Point(513, 148); + txtCustomerCardID.Location = new Point(463, 148); txtCustomerCardID.Name = "txtCustomerCardID"; txtCustomerCardID.Size = new Size(250, 45); txtCustomerCardID.TabIndex = 168; @@ -211,7 +178,7 @@ // txtCustomerTel // txtCustomerTel.Font = new Font("Noto Sans SC", 12F); - txtCustomerTel.Location = new Point(513, 202); + txtCustomerTel.Location = new Point(463, 198); txtCustomerTel.Name = "txtCustomerTel"; txtCustomerTel.Size = new Size(250, 45); txtCustomerTel.TabIndex = 167; @@ -219,7 +186,7 @@ // txtCustomerAddress // txtCustomerAddress.Font = new Font("Noto Sans SC", 12F); - txtCustomerAddress.Location = new Point(145, 253); + txtCustomerAddress.Location = new Point(95, 250); txtCustomerAddress.Name = "txtCustomerAddress"; txtCustomerAddress.Size = new Size(618, 45); txtCustomerAddress.TabIndex = 171; @@ -228,33 +195,67 @@ // ucWindowHeader1.Location = new Point(0, 0); ucWindowHeader1.Name = "ucWindowHeader1"; - ucWindowHeader1.Size = new Size(800, 35); + ucWindowHeader1.Size = new Size(723, 35); ucWindowHeader1.TabIndex = 172; // // btnOk // btnOk.Font = new Font("Noto Sans SC", 11.9999981F, FontStyle.Regular, GraphicsUnit.Point, 0); - btnOk.Location = new Point(628, 309); + btnOk.Location = new Point(579, 307); btnOk.Name = "btnOk"; btnOk.Size = new Size(135, 45); btnOk.TabIndex = 173; btnOk.Text = "保 存"; btnOk.Type = AntdUI.TTypeMini.Info; + btnOk.Click += FrmEditInputs_ButtonOkClick; + // + // cboGender + // + cboGender.Font = new Font("Noto Sans SC", 12F); + cboGender.List = true; + cboGender.ListAutoWidth = true; + cboGender.Location = new Point(95, 150); + cboGender.Name = "cboGender"; + cboGender.Placement = AntdUI.TAlignFrom.Bottom; + cboGender.Size = new Size(251, 45); + cboGender.TabIndex = 174; + // + // cboPassportType + // + cboPassportType.Font = new Font("Noto Sans SC", 12F); + cboPassportType.List = true; + cboPassportType.ListAutoWidth = true; + cboPassportType.Location = new Point(463, 98); + cboPassportType.Name = "cboPassportType"; + cboPassportType.Placement = AntdUI.TAlignFrom.Bottom; + cboPassportType.Size = new Size(251, 45); + cboPassportType.TabIndex = 175; + // + // cboCustomerType + // + cboCustomerType.Font = new Font("Noto Sans SC", 12F); + cboCustomerType.List = true; + cboCustomerType.ListAutoWidth = true; + cboCustomerType.Location = new Point(463, 48); + cboCustomerType.Name = "cboCustomerType"; + cboCustomerType.Placement = AntdUI.TAlignFrom.Bottom; + cboCustomerType.Size = new Size(251, 45); + cboCustomerType.TabIndex = 176; // // FrmEditInputs // AutoScaleMode = AutoScaleMode.None; BackColor = Color.FromArgb(235, 243, 255); - ClientSize = new Size(800, 373); + ClientSize = new Size(722, 364); + Controls.Add(cboCustomerType); + Controls.Add(cboPassportType); + Controls.Add(cboGender); Controls.Add(btnOk); Controls.Add(ucWindowHeader1); Controls.Add(txtCustomerAddress); - Controls.Add(cboCustomerType); - Controls.Add(cboPassportType); Controls.Add(txtCustomerCardID); Controls.Add(txtCustomerTel); Controls.Add(dtpDateOfBirth); - Controls.Add(cboGender); Controls.Add(txtCustomerName); Controls.Add(txtCustomerId); Controls.Add(label10); @@ -266,8 +267,13 @@ Controls.Add(label4); Controls.Add(label3); Controls.Add(label2); + FormBorderStyle = FormBorderStyle.None; Icon = (Icon)resources.GetObject("$this.Icon"); + MaximizeBox = false; + MinimizeBox = false; Name = "FrmEditInputs"; + Resizable = false; + StartPosition = FormStartPosition.CenterScreen; Text = "添加会员信息"; Load += FrmEditInputs_Load; ResumeLayout(false); @@ -286,15 +292,15 @@ private System.Windows.Forms.Label label3; private System.Windows.Forms.Label label2; private AntdUI.DatePicker dtpDateOfBirth; - private AntdUI.Dropdown cboGender; private AntdUI.Input txtCustomerName; private AntdUI.Input txtCustomerId; - private AntdUI.Dropdown cboCustomerType; - private AntdUI.Dropdown cboPassportType; private AntdUI.Input txtCustomerCardID; private AntdUI.Input txtCustomerTel; private AntdUI.Input txtCustomerAddress; private ucWindowHeader ucWindowHeader1; private AntdUI.Button btnOk; + private AntdUI.Select cboGender; + private AntdUI.Select cboPassportType; + private AntdUI.Select cboCustomerType; } } \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmEditInputs.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmEditInputs.cs index d7f5dc7..ce87bc7 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmEditInputs.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmEditInputs.cs @@ -27,17 +27,22 @@ using EOM.TSHotelManagement.Common; using EOM.TSHotelManagement.Common.Contract; using jvncorelib.CodeLib; using jvncorelib.EntityLib; -using Sunny.UI; namespace EOM.TSHotelManagement.FormUI { public partial class FrmEditInputs : Window { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmEditInputs)); private LoadingProgress? _loadingProgress; public FrmEditInputs(LoadingProgress? loadingProgress = null) { InitializeComponent(); _loadingProgress = loadingProgress; + + ucWindowHeader1.ApplySettingsWithoutMinimize( + this.Text.Contains("修改") ? "修改客户信息" : "添加客户信息", + string.Empty, + (Image)resources.GetObject("FrmEditInputs.Icon")!); } Dictionary dic = null; @@ -51,9 +56,9 @@ namespace EOM.TSHotelManagement.FormUI #region 加载客户类型信息 var result = HttpHelper.Request(ApiConstants.Base_SelectCustoTypeAllCanUse); var customerTypes = HttpHelper.JsonToModel>(result.message); - if (customerTypes.Code != BusinessStatusCode.Success) + if (customerTypes.Success == false) { - UIMessageBox.ShowError($"{ApiConstants.Base_SelectCustoTypeAllCanUse}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Base_SelectCustoTypeAllCanUse}+接口服务异常,请提交Issue或尝试更新版本!"); return; } var lstDataGrid = customerTypes.Data.Items; @@ -63,9 +68,9 @@ namespace EOM.TSHotelManagement.FormUI #region 加载证件类型信息 result = HttpHelper.Request(ApiConstants.Base_SelectPassPortTypeAllCanUse); var passportTypes = HttpHelper.JsonToModel>(result.message); - if (passportTypes.Code != BusinessStatusCode.Success) + if (passportTypes.Success == false) { - UIMessageBox.ShowError($"{ApiConstants.Base_SelectPassPortTypeAllCanUse}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Base_SelectPassPortTypeAllCanUse}+接口服务异常,请提交Issue或尝试更新版本!"); return; } var passPorts = passportTypes.Data.Items; @@ -80,9 +85,9 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Base_SelectGenderTypeAll, dic); var genderTypes = HttpHelper.JsonToModel>(result.message); - if (genderTypes.Code != BusinessStatusCode.Success) + if (genderTypes.Success == false) { - UIMessageBox.ShowError($"{ApiConstants.Base_SelectGenderTypeAll}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Base_SelectGenderTypeAll}+接口服务异常,请提交Issue或尝试更新版本!"); return; } var listSexType = genderTypes.Data.Items; @@ -135,13 +140,13 @@ namespace EOM.TSHotelManagement.FormUI result = HttpHelper.Request(ApiConstants.Customer_UpdCustomerInfo, custo.ModelToJson()); var response = HttpHelper.JsonToModel(result.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { - UIMessageBox.Show("修改失败", "系统提示", UIStyle.Red, UIMessageBoxButtons.OK); + NotificationService.ShowError("修改失败"); return; } - UIMessageBox.Show("修改成功", "系统提示", UIStyle.Green, UIMessageBoxButtons.OK); + NotificationService.ShowSuccess("修改成功"); #region 获取添加操作日志所需的信息 RecordHelper.Record(LoginInfo.WorkerNo + "-" + LoginInfo.WorkerName + "在" + Convert.ToDateTime(DateTime.Now) + "位于" + LoginInfo.SoftwareVersion + "执行:" + "修改了一名客户信息,客户编号为:" + custo.CustomerNumber, Common.Core.LogLevel.Critical); #endregion @@ -169,12 +174,12 @@ namespace EOM.TSHotelManagement.FormUI result = HttpHelper.Request(ApiConstants.Customer_InsertCustomerInfo, custo.ModelToJson()); var response = HttpHelper.JsonToModel(result.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { - UIMessageBox.Show($"添加失败\n{response.Message}", "系统提示", UIStyle.Red, UIMessageBoxButtons.OK); + NotificationService.ShowError($"添加失败\n{response.Message}"); return; } - UIMessageBox.Show("添加成功", "系统提示", UIStyle.Green, UIMessageBoxButtons.OK); + NotificationService.ShowSuccess("添加成功"); FrmCustomerManager.ReloadCustomer(false); #region 获取添加操作日志所需的信息 RecordHelper.Record(LoginInfo.WorkerNo + "-" + LoginInfo.WorkerName + "在" + Convert.ToDateTime(DateTime.Now) + "位于" + LoginInfo.SoftwareVersion + "执行:" + "添加了一名客户,客户编号为:" + custo.CustomerNumber, Common.Core.LogLevel.Critical); @@ -196,7 +201,7 @@ namespace EOM.TSHotelManagement.FormUI if (string.IsNullOrEmpty(identityCard)) { //身份证号码不能为空,如果为空返回 - UIMessageBox.ShowError("身份证号码不能为空!"); + NotificationService.ShowError("身份证号码不能为空!"); if (txtCustomerCardID.CanFocus) { txtCustomerCardID.Focus();//设置当前输入焦点为txtCardID_identityCard @@ -208,11 +213,7 @@ namespace EOM.TSHotelManagement.FormUI //身份证号码只能为15位或18位其它不合法 if (identityCard.Length != 15 && identityCard.Length != 18) { - UIMessageBox.ShowWarning("身份证号码为15位或18位,请检查!"); - if (txtCustomerCardID.CanFocus) - { - txtCustomerCardID.Focus(); - } + NotificationService.ShowWarning("身份证号码为15位或18位,请检查!"); return; } } @@ -233,19 +234,19 @@ namespace EOM.TSHotelManagement.FormUI } else { - UIMessageBox.ShowError("请正确输入证件号码!"); + NotificationService.ShowError("请正确输入证件号码!"); return; } } catch { - UIMessageBox.ShowError("请正确输入证件号码!"); + NotificationService.ShowError("请正确输入证件号码!"); return; } } else { - UIMessageBox.ShowError(result.message); + NotificationService.ShowError(result.message); return; } } diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.Designer.cs deleted file mode 100644 index c20059f..0000000 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.Designer.cs +++ /dev/null @@ -1,137 +0,0 @@ - -namespace EOM.TSHotelManagement.FormUI -{ - partial class FrmMySpace - { - /// - /// Required designer variable. - /// - private System.ComponentModel.IContainer components = null; - - /// - /// Clean up any resources being used. - /// - /// true if managed resources should be disposed; otherwise, false. - protected override void Dispose(bool disposing) - { - if (disposing && (components != null)) - { - components.Dispose(); - } - base.Dispose(disposing); - } - - #region Windows Form Designer generated code - - /// - /// Required method for Designer support - do not modify - /// the contents of this method with the code editor. - /// - private void InitializeComponent() - { - AntdUI.Tabs.StyleCard styleCard1 = new AntdUI.Tabs.StyleCard(); - System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmMySpace)); - ucWindowHeader1 = new ucWindowHeader(); - tbPersonnelCenterTabs = new AntdUI.Tabs(); - tbPersonnelInfo = new AntdUI.TabPage(); - pnlPage = new Panel(); - tpPersonnelInfo = new AntdUI.TabPage(); - tpAccountSecurity = new AntdUI.TabPage(); - tpAccountAvatar = new AntdUI.TabPage(); - tbPersonnelCenterTabs.SuspendLayout(); - tbPersonnelInfo.SuspendLayout(); - SuspendLayout(); - // - // ucWindowHeader1 - // - ucWindowHeader1.Location = new Point(-2, 0); - ucWindowHeader1.Name = "ucWindowHeader1"; - ucWindowHeader1.Size = new Size(641, 35); - ucWindowHeader1.TabIndex = 16; - // - // tbPersonnelCenterTabs - // - tbPersonnelCenterTabs.Controls.Add(tbPersonnelInfo); - tbPersonnelCenterTabs.Controls.Add(tpPersonnelInfo); - tbPersonnelCenterTabs.Controls.Add(tpAccountSecurity); - tbPersonnelCenterTabs.Controls.Add(tpAccountAvatar); - tbPersonnelCenterTabs.Font = new Font("Noto Sans SC", 10.5F, FontStyle.Regular, GraphicsUnit.Point, 0); - tbPersonnelCenterTabs.Location = new Point(2, 37); - tbPersonnelCenterTabs.Name = "tbPersonnelCenterTabs"; - tbPersonnelCenterTabs.Pages.Add(tpPersonnelInfo); - tbPersonnelCenterTabs.Pages.Add(tpAccountSecurity); - tbPersonnelCenterTabs.Pages.Add(tpAccountAvatar); - tbPersonnelCenterTabs.Size = new Size(637, 421); - tbPersonnelCenterTabs.Style = styleCard1; - tbPersonnelCenterTabs.TabIndex = 18; - tbPersonnelCenterTabs.Type = AntdUI.TabType.Card; - tbPersonnelCenterTabs.TabClick += tbPersonnelCenterTabs_TabClick; - // - // tbPersonnelInfo - // - tbPersonnelInfo.Controls.Add(pnlPage); - tbPersonnelInfo.Location = new Point(3, 27); - tbPersonnelInfo.Name = "tbPersonnelInfo"; - tbPersonnelInfo.Size = new Size(631, 391); - tbPersonnelInfo.TabIndex = 0; - tbPersonnelInfo.Text = "个人信息"; - // - // pnlPage - // - pnlPage.Location = new Point(3, 3); - pnlPage.Name = "pnlPage"; - pnlPage.Size = new Size(628, 388); - pnlPage.TabIndex = 0; - // - // tpPersonnelInfo - // - tpPersonnelInfo.Location = new Point(3, 27); - tpPersonnelInfo.Name = "tpPersonnelInfo"; - tpPersonnelInfo.Size = new Size(631, 391); - tpPersonnelInfo.TabIndex = 3; - tpPersonnelInfo.Text = "个人信息"; - // - // tpAccountSecurity - // - tpAccountSecurity.Location = new Point(0, 0); - tpAccountSecurity.Name = "tpAccountSecurity"; - tpAccountSecurity.Size = new Size(0, 0); - tpAccountSecurity.TabIndex = 1; - tpAccountSecurity.Text = "账号安全"; - // - // tpAccountAvatar - // - tpAccountAvatar.Location = new Point(0, 0); - tpAccountAvatar.Name = "tpAccountAvatar"; - tpAccountAvatar.Size = new Size(0, 0); - tpAccountAvatar.TabIndex = 2; - tpAccountAvatar.Text = "账号头像"; - // - // FrmMySpace - // - AutoScaleMode = AutoScaleMode.None; - BackColor = Color.FromArgb(235, 243, 255); - ClientSize = new Size(641, 461); - Controls.Add(tbPersonnelCenterTabs); - Controls.Add(ucWindowHeader1); - Icon = (Icon)resources.GetObject("$this.Icon"); - MaximizeBox = false; - MinimizeBox = false; - Name = "FrmMySpace"; - Text = "个人中心"; - Load += FrmMySpace_Load; - tbPersonnelCenterTabs.ResumeLayout(false); - tbPersonnelInfo.ResumeLayout(false); - ResumeLayout(false); - } - - #endregion - private ucWindowHeader ucWindowHeader1; - private AntdUI.Tabs tbPersonnelCenterTabs; - private AntdUI.TabPage tpAccountSecurity; - private AntdUI.TabPage tpAccountAvatar; - private AntdUI.TabPage tbPersonnelInfo; - private Panel pnlPage; - private AntdUI.TabPage tpPersonnelInfo; - } -} \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.cs deleted file mode 100644 index cb230a5..0000000 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.cs +++ /dev/null @@ -1,78 +0,0 @@ -/* - * MIT License - *Copyright (c) 2021 易开元(EOM) - - *Permission is hereby granted, free of charge, to any person obtaining a copy - *of this software and associated documentation files (the "Software"), to deal - *in the Software without restriction, including without limitation the rights - *to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - *copies of the Software, and to permit persons to whom the Software is - *furnished to do so, subject to the following conditions: - - *The above copyright notice and this permission notice shall be included in all - *copies or substantial portions of the Software. - - *THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - *IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - *FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - *AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - *LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - *OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - *SOFTWARE. - * - */ - -using AntdUI; - -namespace EOM.TSHotelManagement.FormUI -{ - public partial class FrmMySpace : Window - { - System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmMySpace)); - public FrmMySpace() - { - InitializeComponent(); - - ucWindowHeader1 = new ucWindowHeader("个人中心", string.Empty, (Image)resources.GetObject("FrmMySpace.Icon")!); - } - - private void FrmMySpace_Load(object sender, EventArgs e) - { - - } - - private void tbPersonnelCenterTabs_TabClick(object sender, TabsItemEventArgs e) - { - switch (e.Item.Name) - { - case "tbPersonnelInfo": - pnlPage.Controls.Clear(); - FrmPersonnelInfo frmPersonnelInfo = new() - { - TopLevel = false - }; - pnlPage.Controls.Add(frmPersonnelInfo); - frmPersonnelInfo.Show(); - break; - case "tbChangePassword": - pnlPage.Controls.Clear(); - FrmAccountSecurity frmAccountSecurity = new() - { - TopLevel = false - }; - pnlPage.Controls.Add(frmAccountSecurity); - frmAccountSecurity.Show(); - break; - case "tbAccountAvatar": - pnlPage.Controls.Clear(); - FrmAvator frmAvator = new() - { - TopLevel = false - }; - pnlPage.Controls.Add(frmAvator); - frmAvator.Show(); - break; - } - } - } -} diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.resx deleted file mode 100644 index 18ddd3d..0000000 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmMySpace.resx +++ /dev/null @@ -1,141 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - - - AAABAAEAICAAAAEAGACFAwAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAgAAAAIAgGAAAAc3p69AAAAAFz - UkdCAK7OHOkAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA7DAAAOwwHHb6hkAAADGklEQVRYR72XMWtU - QRDHAzY24USwCFiIgmC+gK0GES1zkEoCZ6MfwA/gFSmEq3MiKYSAcoQYiV1sAoKNhEtjIwohiCAeSEK8 - 9uLv/9x9zO3tvd3cgQ/+vPd2Z2f+szOzb97MTOY1GAxmwSLogC44BH3wA7w7PT1tgiWe5zNV5omh8AZo - g98YyL028rQnpDC6Ao6tVd5PwA5YBy2wCnbBLyO3NzUBFH4IDK8xdr9KMfOXWHMLXLFyjM+JpOayiCHc - 88Z53gYLWQvHCAVxqyaBsQOzYOpYoqsREGiMdQbBDSPcnMZruxade9KLc5/B9aheJVyucWSvgS1Xgl+5 - v0iVX2X8XakV2a6YJxJtXp6E9ei8m+wMYHHbJF1lwiH7ftxhwNzbM4cNZTVw5Lxfq1LgSix1GFVmuUrU - 5cS/BIf1svG+/h8I6JwoLmzfFYFN99JPbR9yV1PuSyaRQ7OGQEsEuo7AToqA5n1JxYigq5OjA7kvzuZH - ETh0L+s5i5F9VLELWUctNl87m99EoO9eWjkEXN481BkQEMky7nbxmbN5MhEBR2IOJQ2IPEkdQqFjrCtO - XNb9OVMIdAIGR6xKqvSceZG6k9pJn0f67mQlIQsuIPwc9MBNb0AK5Il5f+w8exmStaSYK5ob7p9EoFPG - I0Kd+Ytg38S76cX8mCHwypTYVmwnFC4jsyoCi2ZgpOFg/oFNNpVtjAAy55j7HiRmIxJ/9Y7Fhfw9EVCz - 6bdk5ChGrlxgFhZhsDuAjtuBcRl4ExJgrPiQcVcLd76Y52Xsx4i5p6FikQoJjCG6G8S+bpxol3MYUecb - /RyzYClCIHeozBdVCPjpvD+WzaHdYcA2JGUrxvhlFtlOKdf4UDunjDfer0RLFSHbCZfsU3WdmrfhkY1K - eQTKjtjHOmWgaj4w3svS5Q8YF6+J2nJ0LIBts+0HWcZNjQ/FHWX6MalsWFxF1SUbJMpk7b0S01eH8UQ/ - pPbXTL9n+k3TWPFlNbLK9njC5W6HK1GdE0XfmHkd6WwZKbVcozE5DNdQuAw2QRf433PtiJ41pjn1mLVc - W38BcWWyUzy+d+8AAAAASUVORK5CYII= - - - \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.Designer.cs index 3f5a3cb..6509eca 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.Designer.cs @@ -28,6 +28,7 @@ /// private void InitializeComponent() { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmPersonnelInfo)); label7 = new Label(); label5 = new Label(); label32 = new Label(); @@ -40,97 +41,98 @@ txtEmployeeName = new AntdUI.Input(); txtEmployeeAddress = new AntdUI.Input(); txtEmployeeTel = new AntdUI.Input(); - cboGender = new AntdUI.Dropdown(); - cboEmployeeDepartment = new AntdUI.Dropdown(); - cboEmployeePosition = new AntdUI.Dropdown(); - cboEmployeeNation = new AntdUI.Dropdown(); btnUpdate = new AntdUI.Button(); + cboGender = new AntdUI.Select(); + cboEmployeeNation = new AntdUI.Select(); + cboEmployeePosition = new AntdUI.Select(); + cboEmployeeDepartment = new AntdUI.Select(); + ucWindowHeader1 = new ucWindowHeader(); SuspendLayout(); // // label7 // label7.AutoSize = true; - label7.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label7.Location = new Point(12, 171); + label7.Font = new Font("Noto Sans SC", 14.2499981F); + label7.Location = new Point(18, 214); label7.Name = "label7"; - label7.Size = new Size(88, 25); + label7.Size = new Size(85, 19); label7.TabIndex = 148; label7.Text = "联系方式"; // // label5 // label5.AutoSize = true; - label5.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label5.Location = new Point(323, 69); + label5.Font = new Font("Noto Sans SC", 14.2499981F); + label5.Location = new Point(329, 112); label5.Name = "label5"; - label5.Size = new Size(88, 25); + label5.Size = new Size(85, 19); label5.TabIndex = 136; label5.Text = "现任职位"; // // label32 // label32.AutoSize = true; - label32.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label32.Location = new Point(12, 18); + label32.Font = new Font("Noto Sans SC", 14.2499981F); + label32.Location = new Point(18, 61); label32.Name = "label32"; - label32.Size = new Size(88, 25); + label32.Size = new Size(85, 19); label32.TabIndex = 132; label32.Text = "员工编号"; // // label31 // label31.AutoSize = true; - label31.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label31.Location = new Point(12, 69); + label31.Font = new Font("Noto Sans SC", 14.2499981F); + label31.Location = new Point(18, 112); label31.Name = "label31"; - label31.Size = new Size(88, 25); + label31.Size = new Size(85, 19); label31.TabIndex = 133; label31.Text = "员工姓名"; // // label30 // label30.AutoSize = true; - label30.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label30.Location = new Point(12, 119); + label30.Font = new Font("Noto Sans SC", 14.2499981F); + label30.Location = new Point(18, 162); label30.Name = "label30"; - label30.Size = new Size(86, 25); + label30.Size = new Size(77, 19); label30.TabIndex = 134; label30.Text = "性 别"; // // label1 // label1.AutoSize = true; - label1.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label1.Location = new Point(323, 119); + label1.Font = new Font("Noto Sans SC", 14.2499981F); + label1.Location = new Point(329, 162); label1.Name = "label1"; - label1.Size = new Size(86, 25); + label1.Size = new Size(77, 19); label1.TabIndex = 145; label1.Text = "民 族"; // // label2 // label2.AutoSize = true; - label2.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label2.Location = new Point(12, 221); + label2.Font = new Font("Noto Sans SC", 14.2499981F); + label2.Location = new Point(18, 264); label2.Name = "label2"; - label2.Size = new Size(88, 25); + label2.Size = new Size(85, 19); label2.TabIndex = 137; label2.Text = "居住地址"; // // label16 // label16.AutoSize = true; - label16.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label16.Location = new Point(323, 18); + label16.Font = new Font("Noto Sans SC", 14.2499981F); + label16.Location = new Point(329, 61); label16.Name = "label16"; - label16.Size = new Size(88, 25); + label16.Size = new Size(85, 19); label16.TabIndex = 135; label16.Text = "所在部门"; // // txtEmployeeId // txtEmployeeId.Font = new Font("Noto Sans SC", 12F); - txtEmployeeId.Location = new Point(109, 8); + txtEmployeeId.Location = new Point(103, 51); txtEmployeeId.Name = "txtEmployeeId"; txtEmployeeId.ReadOnly = true; txtEmployeeId.Size = new Size(205, 45); @@ -139,7 +141,7 @@ // txtEmployeeName // txtEmployeeName.Font = new Font("Noto Sans SC", 12F); - txtEmployeeName.Location = new Point(109, 59); + txtEmployeeName.Location = new Point(103, 102); txtEmployeeName.Name = "txtEmployeeName"; txtEmployeeName.Size = new Size(205, 45); txtEmployeeName.TabIndex = 150; @@ -147,7 +149,7 @@ // txtEmployeeAddress // txtEmployeeAddress.Font = new Font("Noto Sans SC", 12F); - txtEmployeeAddress.Location = new Point(109, 208); + txtEmployeeAddress.Location = new Point(103, 251); txtEmployeeAddress.Name = "txtEmployeeAddress"; txtEmployeeAddress.Size = new Size(515, 45); txtEmployeeAddress.TabIndex = 151; @@ -155,77 +157,85 @@ // txtEmployeeTel // txtEmployeeTel.Font = new Font("Noto Sans SC", 12F); - txtEmployeeTel.Location = new Point(110, 159); + txtEmployeeTel.Location = new Point(104, 202); txtEmployeeTel.Name = "txtEmployeeTel"; txtEmployeeTel.Size = new Size(515, 45); txtEmployeeTel.TabIndex = 152; // + // btnUpdate + // + btnUpdate.Font = new Font("Noto Sans SC", 12F); + btnUpdate.Location = new Point(530, 302); + btnUpdate.Name = "btnUpdate"; + btnUpdate.Size = new Size(87, 43); + btnUpdate.TabIndex = 157; + btnUpdate.Text = "修 改"; + btnUpdate.Type = AntdUI.TTypeMini.Info; + btnUpdate.Click += btnUpdate_Click; + // // cboGender // - cboGender.DropDownArrow = true; cboGender.Font = new Font("Noto Sans SC", 12F); - cboGender.Location = new Point(109, 112); + cboGender.List = true; + cboGender.ListAutoWidth = true; + cboGender.Location = new Point(103, 152); cboGender.Name = "cboGender"; cboGender.Placement = AntdUI.TAlignFrom.Bottom; - cboGender.Size = new Size(204, 40); - cboGender.TabIndex = 153; - cboGender.ToggleType = AntdUI.TTypeMini.Info; + cboGender.Size = new Size(205, 45); + cboGender.TabIndex = 175; // - // cboEmployeeDepartment + // cboEmployeeNation // - cboEmployeeDepartment.DropDownArrow = true; - cboEmployeeDepartment.Font = new Font("Noto Sans SC", 12F); - cboEmployeeDepartment.Location = new Point(421, 13); - cboEmployeeDepartment.Name = "cboEmployeeDepartment"; - cboEmployeeDepartment.Placement = AntdUI.TAlignFrom.Bottom; - cboEmployeeDepartment.Size = new Size(204, 40); - cboEmployeeDepartment.TabIndex = 154; - cboEmployeeDepartment.ToggleType = AntdUI.TTypeMini.Info; + cboEmployeeNation.Font = new Font("Noto Sans SC", 12F); + cboEmployeeNation.List = true; + cboEmployeeNation.ListAutoWidth = true; + cboEmployeeNation.Location = new Point(413, 152); + cboEmployeeNation.Name = "cboEmployeeNation"; + cboEmployeeNation.Placement = AntdUI.TAlignFrom.Bottom; + cboEmployeeNation.Size = new Size(204, 45); + cboEmployeeNation.TabIndex = 176; // // cboEmployeePosition // - cboEmployeePosition.DropDownArrow = true; cboEmployeePosition.Font = new Font("Noto Sans SC", 12F); - cboEmployeePosition.Location = new Point(421, 64); + cboEmployeePosition.List = true; + cboEmployeePosition.ListAutoWidth = true; + cboEmployeePosition.Location = new Point(413, 102); cboEmployeePosition.Name = "cboEmployeePosition"; cboEmployeePosition.Placement = AntdUI.TAlignFrom.Bottom; - cboEmployeePosition.Size = new Size(204, 40); - cboEmployeePosition.TabIndex = 155; - cboEmployeePosition.ToggleType = AntdUI.TTypeMini.Info; + cboEmployeePosition.Size = new Size(205, 45); + cboEmployeePosition.TabIndex = 177; // - // cboEmployeeNation + // cboEmployeeDepartment // - cboEmployeeNation.DropDownArrow = true; - cboEmployeeNation.Font = new Font("Noto Sans SC", 12F); - cboEmployeeNation.Location = new Point(421, 112); - cboEmployeeNation.Name = "cboEmployeeNation"; - cboEmployeeNation.Placement = AntdUI.TAlignFrom.Bottom; - cboEmployeeNation.Size = new Size(204, 40); - cboEmployeeNation.TabIndex = 156; - cboEmployeeNation.ToggleType = AntdUI.TTypeMini.Info; + cboEmployeeDepartment.Font = new Font("Noto Sans SC", 12F); + cboEmployeeDepartment.List = true; + cboEmployeeDepartment.ListAutoWidth = true; + cboEmployeeDepartment.Location = new Point(413, 51); + cboEmployeeDepartment.Name = "cboEmployeeDepartment"; + cboEmployeeDepartment.Placement = AntdUI.TAlignFrom.Bottom; + cboEmployeeDepartment.Size = new Size(205, 45); + cboEmployeeDepartment.TabIndex = 178; // - // btnUpdate + // ucWindowHeader1 // - btnUpdate.Font = new Font("Noto Sans SC", 12F); - btnUpdate.Location = new Point(538, 258); - btnUpdate.Name = "btnUpdate"; - btnUpdate.Size = new Size(87, 43); - btnUpdate.TabIndex = 157; - btnUpdate.Text = "修 改"; - btnUpdate.Type = AntdUI.TTypeMini.Info; - btnUpdate.Click += btnUpdate_Click; + ucWindowHeader1.Location = new Point(-1, -1); + ucWindowHeader1.Name = "ucWindowHeader1"; + ucWindowHeader1.Size = new Size(639, 35); + ucWindowHeader1.TabIndex = 179; // // FrmPersonnelInfo // AutoScaleDimensions = new SizeF(7F, 17F); AutoScaleMode = AutoScaleMode.Font; BackColor = Color.FromArgb(235, 243, 255); - ClientSize = new Size(637, 312); - Controls.Add(btnUpdate); - Controls.Add(cboEmployeeNation); - Controls.Add(cboEmployeePosition); + ClientSize = new Size(637, 359); + Controls.Add(ucWindowHeader1); Controls.Add(cboEmployeeDepartment); + Controls.Add(cboEmployeePosition); + Controls.Add(cboEmployeeNation); Controls.Add(cboGender); + Controls.Add(btnUpdate); Controls.Add(txtEmployeeTel); Controls.Add(txtEmployeeAddress); Controls.Add(txtEmployeeName); @@ -238,7 +248,10 @@ Controls.Add(label1); Controls.Add(label2); Controls.Add(label16); + FormBorderStyle = FormBorderStyle.FixedSingle; + Icon = (Icon)resources.GetObject("$this.Icon"); Name = "FrmPersonnelInfo"; + StartPosition = FormStartPosition.CenterScreen; Text = "FrmPersonnelInfo"; Load += FrmPersonnelInfo_Load; ResumeLayout(false); @@ -259,10 +272,11 @@ private AntdUI.Input txtEmployeeName; private AntdUI.Input txtEmployeeAddress; private AntdUI.Input txtEmployeeTel; - private AntdUI.Dropdown cboGender; - private AntdUI.Dropdown cboEmployeeDepartment; - private AntdUI.Dropdown cboEmployeePosition; - private AntdUI.Dropdown cboEmployeeNation; private AntdUI.Button btnUpdate; + private AntdUI.Select cboGender; + private AntdUI.Select cboEmployeeNation; + private AntdUI.Select cboEmployeePosition; + private AntdUI.Select cboEmployeeDepartment; + private ucWindowHeader ucWindowHeader1; } } \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.cs index 3ed4d08..ade0917 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.cs @@ -2,7 +2,6 @@ using EOM.TSHotelManagement.Common; using EOM.TSHotelManagement.Common.Contract; using jvncorelib.EntityLib; -using Sunny.UI; using System; using System.Collections.Generic; using System.ComponentModel; @@ -12,15 +11,17 @@ using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; -using static System.Windows.Forms.VisualStyles.VisualStyleElement.ToolTip; namespace EOM.TSHotelManagement.FormUI { public partial class FrmPersonnelInfo : Window { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmPersonnelInfo)); public FrmPersonnelInfo() { InitializeComponent(); + + ucWindowHeader1.ApplySettingsWithoutMinimize("我的信息", string.Empty, (Image)resources.GetObject("FrmPersonnelInfo.Icon")!); } private void FrmPersonnelInfo_Load(object sender, EventArgs e) @@ -34,9 +35,9 @@ namespace EOM.TSHotelManagement.FormUI }; var result = HttpHelper.Request(ApiConstants.Base_SelectNationAll, dic); var nations = HttpHelper.JsonToModel>(result.message); - if (nations.Code != BusinessStatusCode.Success) + if (nations.Success == false) { - UIMessageBox.ShowError($"{ApiConstants.Base_SelectNationAll}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Base_SelectNationAll}+接口服务异常,请提交Issue或尝试更新版本!"); return; } cboEmployeeNation.Items.AddRange(nations.Data.Items.Select(item=> new AntdUI.SelectItem(item.NationName,item.NationNumber)).ToArray()); @@ -48,18 +49,18 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Base_SelectGenderTypeAll, dic); var genderTypes = HttpHelper.JsonToModel>(result.message); - if (genderTypes.Code != BusinessStatusCode.Success) + if (genderTypes.Success == false) { - UIMessageBox.ShowError($"{ApiConstants.Base_SelectGenderTypeAll}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Base_SelectGenderTypeAll}+接口服务异常,请提交Issue或尝试更新版本!"); return; } cboGender.Items.AddRange(genderTypes.Data.Items.Select(item => new AntdUI.SelectItem(item.Description, item.Id)).ToArray()); //加载部门信息 result = HttpHelper.Request(ApiConstants.Base_SelectDeptAllCanUse); var depts = HttpHelper.JsonToModel>(result.message); - if (depts.Code != BusinessStatusCode.Success) + if (depts.Success == false) { - UIMessageBox.ShowError($"{ApiConstants.Base_SelectDeptAllCanUse}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Base_SelectDeptAllCanUse}+接口服务异常,请提交Issue或尝试更新版本!"); return; } cboEmployeeDepartment.Items.AddRange(depts.Data.Items.Select(item => new AntdUI.SelectItem(item.DepartmentName, item.DepartmentNumber)).ToArray()); @@ -71,9 +72,9 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Base_SelectPositionAll, dic); var positions = HttpHelper.JsonToModel>(result.message); - if (positions.Code != BusinessStatusCode.Success) + if (positions.Success == false) { - UIMessageBox.ShowError($"{ApiConstants.Base_SelectPositionAll}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Base_SelectPositionAll}+接口服务异常,请提交Issue或尝试更新版本!"); return; } cboEmployeePosition.Items.AddRange(positions.Data.Items.Select(item => new AntdUI.SelectItem(item.PositionName, item.PositionNumber)).ToArray()); @@ -89,9 +90,9 @@ namespace EOM.TSHotelManagement.FormUI }; var result = HttpHelper.Request(ApiConstants.Employee_SelectEmployeeInfoByEmployeeId, dic); var employees = HttpHelper.JsonToModel>(result.message); - if (employees.Code != BusinessStatusCode.Success) + if (employees.Success == false) { - UIMessageBox.ShowError($"{ApiConstants.Employee_SelectEmployeeInfoByEmployeeId}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Employee_SelectEmployeeInfoByEmployeeId}+接口服务异常,请提交Issue或尝试更新版本!"); return; } ReadEmployeeOutputDto worker = employees.Data; @@ -109,23 +110,6 @@ namespace EOM.TSHotelManagement.FormUI txtEmployeeAddress.Text = worker.Address; txtEmployeeTel.Text = worker.PhoneNumber; } - //dic = new Dictionary - //{ - // { nameof(ReadEmployeePhotoInputDto.EmployeeId) , LoginInfo.WorkerNo } - //}; - //result = HttpHelper.Request(ApiConstants.EmployeePhoto_EmployeePhoto, dic); - //var workerPic = HttpHelper.JsonToModel>(result.message); - //if (workerPic.Code != BusinessStatusCode.Success) - //{ - // UIMessageBox.ShowError($"{ApiConstants.EmployeePhoto_EmployeePhoto}+接口服务异常,请提交Issue或尝试更新版本!"); - // return; - //} - //var workerPicData = workerPic.Data; - //if (workerPicData != null && !string.IsNullOrEmpty(workerPicData.PhotoPath)) - //{ - // picWorkerPic.BackgroundImage = null; - // if (!string.IsNullOrEmpty(workerPicData.PhotoPath)) picWorkerPic.Load(workerPicData.PhotoPath); - //} Refresh(); } @@ -177,12 +161,12 @@ namespace EOM.TSHotelManagement.FormUI { result = HttpHelper.Request(ApiConstants.Employee_UpdateEmployee, worker.ModelToJson()); var response = HttpHelper.JsonToModel(result.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { - UIMessageBox.ShowError($"{ApiConstants.Employee_UpdateEmployee}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Employee_UpdateEmployee}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - UIMessageBox.Show("修改成功!", "系统提示", UIStyle.Green, UIMessageBoxButtons.OK); + NotificationService.ShowSuccess("修改成功!"); #region 获取添加操作日志所需的信息 RecordHelper.Record(LoginInfo.WorkerNo + "-" + LoginInfo.WorkerName + "在" + Convert.ToDateTime(DateTime.Now) + "位于" + LoginInfo.SoftwareVersion + "执行:" + "修改个人信息操作!", Common.Core.LogLevel.Warning); #endregion diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.resx b/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.resx index 8b2ff64..e072779 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.resx +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.resx @@ -117,4 +117,27 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + AAABAAEAICAAAAEAGAASBAAAFgAAAIlQTkcNChoKAAAADUlIRFIAAAAgAAAAIAgGAAAAc3p69AAAAAFz + UkdCAK7OHOkAAAAEZ0FNQQAAsY8L/GEFAAAACXBIWXMAAA7DAAAOwwHHb6hkAAADp0lEQVRYR7WXWYhP + URzHx5pliGEkSyhJeCCJZHsgpSxZx5pkT0h2CYkHpQYJKeRBliyFEoMiWVIj2bLmwYOdeCDM+HzP/c5/ + TPP3n/u/xrc+nXN+27n/+7/3nHNz4qqkpKQrTIYNcBwOwurS0tJxkOuw/yMmGgsPmSit8N2CPg6vXlF4 + IXN88kQ3oBAKYA7swnzbvg8w1WnVIwqOhMfwFpYwTxO7Kgjfcl+E7lJ7m/9NKkTB/fAN5tmcVvjrw274 + CtttTi4mr02hKfAOTkEXu/4qYtrAK3gBBTYnEwXyYQs8gfE2ZxRxjWErvId1NicTBTqBXrVr0N/mjOKu + 1SN2JvyEQzYnEwX6QDHo9neyOaO4gJrE9qXVw3gZ2tmVvUjuBXq3z0MPmzOKeesQO9IXUASt7MpeJHeD + c3AHhtmcUcQ1ZO6VvoAzUN+u7EVya9gJeguWxinGvM2JOw16FQttTi6KaPnV6vYcRtucVkyu2z/fv/4Z + jLEruagVFiIXvQK97aokQgY57iPNepv/XRTU23DZxV/DNrr9oJ79w2GP/BL94pBYnaLoANAd+OV5NNFT + +AwlHv+AY3Rr0HaEjTDBJXSHujNeDAPoh4uPJYKbkDQD7tP/q/B/oRkMs+k/sO0BTKTbk/asba9p1tPm + eYr0IiCfQBW76cTvoGX5JKyDYTAa1uI+SqsluFCxcUSs7lAjT1dR+PXwHY5CQ/B1GAENHVJJhGnzKogy + qhaxu2kqb+0YW8IBB2lXWwVt7c4oUtorL46ouYimgVMjYdD/rROOAh7TjLOrShFbVxer3DIxfgl7QQua + 6qXE+AQ0c3qqwAo7tafPtatKEatnoli5ZWJ8laazQxSjrfpI5I3EuIhmegigkwu3MWrlWxOMMaVif4r8 + tAcSbGGDc1hKZU69atrHr0J+MMaU66RE/l2annanhF3HtjNRVLnKnBfpf6JdHAxZKCpTLmroYDrI7pSw + t4DzUVS55BiiDq02nQ6Ojy1y7oVKFuM3sMzulHCNwl7h20JjFVgAWmg2OTYrkZcHkyCsdhJ9TTTKIYrR + V5UeuiD6OkFPhTw5d8BX7JVuWzYiv8I6QE0d5x/BXdf/U1q2a4VEnDp2fQyDhFIxagwPpWOI2Ak0dUMy + g5eRObH0+uoB074QS8RuhmgvoPPC9sSiRg/oAJdskk3rgf7rbRB2SIm+zosD6dYJF0BH/51ONImgWOqr + iXEu42lwAVbYrB85FPbBLGKa2oxycn4DnUXgUUEkWqsAAAAASUVORK5CYII= + + \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmProgress.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmProgress.Designer.cs index b8e70e1..e38b24a 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmProgress.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmProgress.Designer.cs @@ -49,7 +49,7 @@ BackColor = Color.FromArgb(235, 243, 255); ClientSize = new Size(155, 110); Controls.Add(spin1); - FormBorderStyle = FormBorderStyle.None; + FormBorderStyle = FormBorderStyle.FixedSingle; Icon = (Icon)resources.GetObject("$this.Icon"); MaximizeBox = false; MinimizeBox = false; diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserList.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserList.Designer.cs index 33db04f..de72f78 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserList.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserList.Designer.cs @@ -56,90 +56,90 @@ // label10 // label10.AutoSize = true; - label10.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label10.Location = new Point(14, 505); + label10.Font = new Font("Noto Sans SC", 14.2499981F); + label10.Location = new Point(30, 508); label10.Name = "label10"; - label10.Size = new Size(88, 25); + label10.Size = new Size(85, 19); label10.TabIndex = 122; label10.Text = "居住地址"; // // label9 // label9.AutoSize = true; - label9.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label9.Location = new Point(403, 450); + label9.Font = new Font("Noto Sans SC", 14.2499981F); + label9.Location = new Point(408, 457); label9.Name = "label9"; - label9.Size = new Size(88, 25); + label9.Size = new Size(85, 19); label9.TabIndex = 121; label9.Text = "联系方式"; // // label8 // label8.AutoSize = true; - label8.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label8.Location = new Point(403, 399); + label8.Font = new Font("Noto Sans SC", 14.2499981F); + label8.Location = new Point(408, 404); label8.Name = "label8"; - label8.Size = new Size(88, 25); + label8.Size = new Size(85, 19); label8.TabIndex = 120; label8.Text = "证件号码"; // // label7 // label7.AutoSize = true; - label7.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label7.Location = new Point(403, 348); + label7.Font = new Font("Noto Sans SC", 14.2499981F); + label7.Location = new Point(408, 354); label7.Name = "label7"; - label7.Size = new Size(88, 25); + label7.Size = new Size(85, 19); label7.TabIndex = 119; label7.Text = "证件类型"; // // label6 // label6.AutoSize = true; - label6.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label6.Location = new Point(403, 297); + label6.Font = new Font("Noto Sans SC", 14.2499981F); + label6.Location = new Point(408, 304); label6.Name = "label6"; - label6.Size = new Size(88, 25); + label6.Size = new Size(85, 19); label6.TabIndex = 118; label6.Text = "客户类型"; // // label5 // label5.AutoSize = true; - label5.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label5.Location = new Point(16, 453); + label5.Font = new Font("Noto Sans SC", 14.2499981F); + label5.Location = new Point(28, 457); label5.Name = "label5"; - label5.Size = new Size(88, 25); + label5.Size = new Size(85, 19); label5.TabIndex = 117; label5.Text = "出生日期"; // // label4 // label4.AutoSize = true; - label4.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label4.Location = new Point(16, 401); + label4.Font = new Font("Noto Sans SC", 14.2499981F); + label4.Location = new Point(38, 406); label4.Name = "label4"; - label4.Size = new Size(86, 25); + label4.Size = new Size(77, 19); label4.TabIndex = 116; label4.Text = "性 别"; // // label3 // label3.AutoSize = true; - label3.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label3.Location = new Point(16, 349); + label3.Font = new Font("Noto Sans SC", 14.2499981F); + label3.Location = new Point(30, 355); label3.Name = "label3"; - label3.Size = new Size(88, 25); + label3.Size = new Size(85, 19); label3.TabIndex = 115; label3.Text = "客户姓名"; // // label2 // label2.AutoSize = true; - label2.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label2.Location = new Point(16, 297); + label2.Font = new Font("Noto Sans SC", 14.2499981F); + label2.Location = new Point(30, 304); label2.Name = "label2"; - label2.Size = new Size(88, 25); + label2.Size = new Size(85, 19); label2.TabIndex = 114; label2.Text = "客户编号"; // @@ -155,7 +155,6 @@ // // btnPg // - btnPg.Current = 0; btnPg.Location = new Point(14, 253); btnPg.Name = "btnPg"; btnPg.PageSize = 15; @@ -188,7 +187,7 @@ // cboGender.DropDownArrow = true; cboGender.Font = new Font("Noto Sans SC", 12F); - cboGender.Location = new Point(121, 394); + cboGender.Location = new Point(121, 396); cboGender.Name = "cboGender"; cboGender.Placement = AntdUI.TAlignFrom.Bottom; cboGender.Size = new Size(251, 40); @@ -198,7 +197,7 @@ // txtCustomerName // txtCustomerName.Font = new Font("Noto Sans SC", 12F); - txtCustomerName.Location = new Point(121, 341); + txtCustomerName.Location = new Point(121, 343); txtCustomerName.Name = "txtCustomerName"; txtCustomerName.Size = new Size(252, 45); txtCustomerName.TabIndex = 155; @@ -223,7 +222,7 @@ // txtCustomerTel // txtCustomerTel.Font = new Font("Noto Sans SC", 12F); - txtCustomerTel.Location = new Point(499, 440); + txtCustomerTel.Location = new Point(501, 441); txtCustomerTel.Name = "txtCustomerTel"; txtCustomerTel.Size = new Size(250, 45); txtCustomerTel.TabIndex = 158; @@ -231,7 +230,7 @@ // txtCustomerCardID // txtCustomerCardID.Font = new Font("Noto Sans SC", 12F); - txtCustomerCardID.Location = new Point(499, 389); + txtCustomerCardID.Location = new Point(501, 389); txtCustomerCardID.Name = "txtCustomerCardID"; txtCustomerCardID.Size = new Size(250, 45); txtCustomerCardID.TabIndex = 159; @@ -241,7 +240,7 @@ // cboPassportType.DropDownArrow = true; cboPassportType.Font = new Font("Noto Sans SC", 12F); - cboPassportType.Location = new Point(499, 341); + cboPassportType.Location = new Point(501, 342); cboPassportType.Name = "cboPassportType"; cboPassportType.Placement = AntdUI.TAlignFrom.Bottom; cboPassportType.Size = new Size(250, 40); @@ -252,7 +251,7 @@ // cboCustomerType.DropDownArrow = true; cboCustomerType.Font = new Font("Noto Sans SC", 12F); - cboCustomerType.Location = new Point(499, 290); + cboCustomerType.Location = new Point(499, 295); cboCustomerType.Name = "cboCustomerType"; cboCustomerType.Placement = AntdUI.TAlignFrom.Bottom; cboCustomerType.Size = new Size(250, 40); @@ -295,8 +294,11 @@ Controls.Add(label4); Controls.Add(label3); Controls.Add(label2); + FormBorderStyle = FormBorderStyle.None; Icon = (Icon)resources.GetObject("$this.Icon"); Name = "FrmReserList"; + Resizable = false; + StartPosition = FormStartPosition.CenterScreen; Text = "预约列表"; Load += FrmReserList_Load; ResumeLayout(false); @@ -313,7 +315,6 @@ private System.Windows.Forms.Label label4; private System.Windows.Forms.Label label3; private System.Windows.Forms.Label label2; - private Sunny.UI.UIButton btnSelect; private AntdUI.Table dgvReserList; private AntdUI.Pagination btnPg; private ucWindowHeader ucWindowHeader1; diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserList.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserList.cs index 41d7c4c..f3757b1 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserList.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserList.cs @@ -36,7 +36,7 @@ namespace EOM.TSHotelManagement.FormUI { InitializeComponent(); - ucWindowHeader1 = new ucWindowHeader("预约列表", string.Empty, (Image)resources.GetObject("FrmReserList.Icon")!); + ucWindowHeader1.ApplySettingsWithoutMinimize("预约列表", string.Empty, (Image)resources.GetObject("FrmReserList.Icon")!); } ResponseMsg result = new ResponseMsg(); @@ -75,7 +75,7 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Reser_SelectReserAll, dic); var resers = HttpHelper.JsonToModel>(result.message); - if (resers.Code != BusinessStatusCode.Success) + if (resers.Success == false) { AntdUI.Message.error(this, $"{ApiConstants.Reser_SelectReserAll}+接口服务异常,请提交Issue或尝试更新版本!"); return null!; @@ -117,9 +117,9 @@ namespace EOM.TSHotelManagement.FormUI #region 加载客户类型信息 result = HttpHelper.Request(ApiConstants.Base_SelectCustoTypeAllCanUse); var customerTypeDataSource = HttpHelper.JsonToModel>(result.message); - if (customerTypeDataSource.Code != BusinessStatusCode.Success) + if (customerTypeDataSource.Success == false) { - AntdUI.Modal.open(this, UIMessageConstant.Error, $"{ApiConstants.Base_SelectCustoTypeAllCanUse}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Base_SelectCustoTypeAllCanUse}+接口服务异常,请提交Issue或尝试更新版本!"); return; } List lstDataGrid = customerTypeDataSource.Data.Items; @@ -129,9 +129,9 @@ namespace EOM.TSHotelManagement.FormUI #region 加载证件类型信息 result = HttpHelper.Request(ApiConstants.Base_SelectPassPortTypeAllCanUse); var passportDataSource = HttpHelper.JsonToModel>(result.message); - if (passportDataSource.Code != BusinessStatusCode.Success) + if (passportDataSource.Success == false) { - AntdUI.Modal.open(this, UIMessageConstant.Error, $"{ApiConstants.Base_SelectPassPortTypeAllCanUse}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Base_SelectPassPortTypeAllCanUse}+接口服务异常,请提交Issue或尝试更新版本!"); return; } List passPorts = passportDataSource.Data.Items; @@ -146,9 +146,9 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Base_SelectGenderTypeAll, dic); var genderTypeDataSource = HttpHelper.JsonToModel>(result.message); - if (genderTypeDataSource.Code != BusinessStatusCode.Success) + if (genderTypeDataSource.Success == false) { - AntdUI.Modal.open(this, UIMessageConstant.Error, $"{ApiConstants.Base_SelectGenderTypeAll}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Base_SelectGenderTypeAll}+接口服务异常,请提交Issue或尝试更新版本!"); return; } List listSexType = genderTypeDataSource.Data.Items; @@ -192,13 +192,13 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Room_CheckinRoomByReservation, reser.ModelToJson()); var response = HttpHelper.JsonToModel(result.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { - AntdUI.Modal.open(this, UIMessageConstant.Error, $"{ApiConstants.Room_CheckinRoomByReservation}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Room_CheckinRoomByReservation}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - AntdUI.Modal.open(this, UIMessageConstant.Success, "操作成功"); + NotificationService.ShowSuccess("操作成功"); LoadReserData(); FrmRoomManager.Reload(""); FrmRoomManager._RefreshRoomCount(); @@ -213,7 +213,7 @@ namespace EOM.TSHotelManagement.FormUI if (string.IsNullOrEmpty(identityCard)) { //身份证号码不能为空,如果为空返回 - AntdUI.Modal.open(this, UIMessageConstant.Warning, "身份证号码不能为空!"); + NotificationService.ShowWarning("身份证号码不能为空!"); if (txtCustomerCardID.CanFocus) { txtCustomerCardID.Focus();//设置当前输入焦点为txtCardID_identityCard @@ -225,7 +225,7 @@ namespace EOM.TSHotelManagement.FormUI //身份证号码只能为15位或18位其它不合法 if (identityCard.Length != 15 && identityCard.Length != 18) { - AntdUI.Modal.open(this, UIMessageConstant.Warning, "身份证号码为15位或18位,请检查!"); + NotificationService.ShowWarning("身份证号码为15位或18位,请检查!"); if (txtCustomerCardID.CanFocus) { txtCustomerCardID.Focus(); @@ -247,13 +247,13 @@ namespace EOM.TSHotelManagement.FormUI } catch { - AntdUI.Modal.open(this, UIMessageConstant.Error, "请正确输入证件号码!"); + NotificationService.ShowError("请正确输入证件号码!"); return; } } else { - AntdUI.Modal.open(this, UIMessageConstant.Error, result.message); + NotificationService.ShowError(result.message); return; } } diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserManagement.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserManagement.Designer.cs index e4fd545..1a16804 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserManagement.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserManagement.Designer.cs @@ -209,8 +209,10 @@ Controls.Add(label10); Controls.Add(label1); Controls.Add(label9); + FormBorderStyle = FormBorderStyle.None; Icon = (Icon)resources.GetObject("$this.Icon"); Name = "FrmReserManager"; + Resizable = false; StartPosition = FormStartPosition.CenterScreen; Text = "预约管理"; Load += FrmRoomManager_Load; diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserManagement.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserManagement.cs index 7888728..92c6d8d 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserManagement.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserManagement.cs @@ -37,7 +37,7 @@ namespace EOM.TSHotelManagement.FormUI public FrmReserManager() { InitializeComponent(); - whReserRoomManagement = new ucWindowHeader("房间预约管理", string.Empty, (Image)resources.GetObject("FrmReserManager.Icon")!); + whReserRoomManagement.ApplySettingsWithoutMinimize("房间预约管理", string.Empty, (Image)resources.GetObject("FrmReserManager.Icon")!); #region 防止背景闪屏方法 this.DoubleBuffered = true;//设置本窗体 SetStyle(ControlStyles.UserPaint, true); @@ -75,19 +75,19 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Reser_InsertReserInfo, reser.ModelToJson()); var response = HttpHelper.JsonToModel(result.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { - AntdUI.Modal.open(this, UIMessageConstant.Error, $"{ApiConstants.Reser_InsertReserInfo}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Reser_InsertReserInfo}+接口服务异常,请提交Issue或尝试更新版本!"); return; } result = HttpHelper.Request(ApiConstants.Room_UpdateRoomInfoWithReser, room.ModelToJson()); response = HttpHelper.JsonToModel(result.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { - AntdUI.Modal.open(this, UIMessageConstant.Error, $"{ApiConstants.Room_UpdateRoomInfoWithReser}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Room_UpdateRoomInfoWithReser}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - AntdUI.Modal.open(this, UIMessageConstant.Success, "预约成功!请在指定时间内进行登记入住"); + NotificationService.ShowSuccess("预约成功!请在指定时间内进行登记入住"); #region 获取添加操作日志所需的信息 RecordHelper.Record(LoginInfo.WorkerClub + LoginInfo.WorkerPosition + LoginInfo.WorkerName + "于" + Convert.ToDateTime(DateTime.Now) + "帮助" + txtCustoTel.Text + "进行了预订房间操作!", Common.Core.LogLevel.Normal); #endregion @@ -101,9 +101,9 @@ namespace EOM.TSHotelManagement.FormUI { result = HttpHelper.Request(ApiConstants.Room_SelectCanUseRoomAll); var response = HttpHelper.JsonToModel>(result.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { - AntdUI.Modal.open(this, UIMessageConstant.Error, $"{ApiConstants.Room_SelectCanUseRoomAll}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Room_SelectCanUseRoomAll}+接口服务异常,请提交Issue或尝试更新版本!"); return; } cboReserRoomNo.Items.AddRange(response.Data.Items.Select(item => new AntdUI.SelectItem(item.RoomNumber)).ToArray()); @@ -116,10 +116,5 @@ namespace EOM.TSHotelManagement.FormUI FrmReserList frm = new FrmReserList(); frm.Show(); } - - private void phReserRoomManagement_Click(object sender, EventArgs e) - { - - } } } \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomManagement.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomManagement.cs index b2991cc..cef7ae7 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomManagement.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomManagement.cs @@ -114,15 +114,25 @@ namespace EOM.TSHotelManagement.FormUI var response = HttpHelper.JsonToModel>(httpResponse.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { - throw new HttpRequestException($"{url} 请求失败,状态码:{response.Code}"); + AntdUI.Notification.open(new AntdUI.Notification.Config(this, UIMessageConstant.Error, $"{url} 请求失败,状态码:{response.Code}", AntdUI.TType.Error, AntdUI.TAlignFrom.TR, Font) + { + Radius = 10, + FontStyleTitle = FontStyle.Bold, + ShowInWindow = true + }); } var propertyInfo = typeof(ReadRoomOutputDto).GetProperty(propertyName); if (propertyInfo == null) { - throw new MissingFieldException($"ReadRoomOutputDto 中未找到 {propertyName} 属性"); + AntdUI.Notification.open(new AntdUI.Notification.Config(this, UIMessageConstant.Error, $"ReadRoomOutputDto 中未找到 {propertyName} 属性", AntdUI.TType.Error, AntdUI.TAlignFrom.TR, Font) + { + Radius = 10, + FontStyleTitle = FontStyle.Bold, + ShowInWindow = true + }); } if (propertyInfo.GetValue(response.Data) is int countValue) @@ -150,7 +160,12 @@ namespace EOM.TSHotelManagement.FormUI } catch (Exception ex) { - AntdUI.Modal.open(this, UIMessageConstant.Error, $"接口服务异常,请提交Issue或尝试更新版本!: {ex.Message}"); + AntdUI.Notification.open(new AntdUI.Notification.Config(this, UIMessageConstant.Error, $"接口服务异常,请提交Issue或尝试更新版本!: {ex.Message}", AntdUI.TType.Error, AntdUI.TAlignFrom.TR, Font) + { + Radius = 10, + FontStyleTitle = FontStyle.Bold, + ShowInWindow = true + }); } } @@ -226,16 +241,16 @@ namespace EOM.TSHotelManagement.FormUI }; var result = HttpHelper.Request(ApiConstants.RoomType_SelectRoomTypesAll, dic); var response = HttpHelper.JsonToModel>(result.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { - throw new Exception($"{ApiConstants.RoomType_SelectRoomTypesAll}+接口服务异常"); + NotificationService.ShowError($"{ApiConstants.RoomType_SelectRoomTypesAll}+接口服务异常"); } var listRoomTypes = response.Data.Items; if (listRoomTypes == null) { - AntdUI.Modal.open(this, UIMessageConstant.Error, "Room types list is null"); + NotificationService.ShowError($"房间类型列表为空"); return; } @@ -249,7 +264,7 @@ namespace EOM.TSHotelManagement.FormUI } catch (Exception ex) { - AntdUI.Modal.open(this, UIMessageConstant.Error, $"接口服务异常,请提交Issue或尝试更新版本!: {ex.Message}"); + NotificationService.ShowError($"接口服务异常,请提交Issue或尝试更新版本!: {ex.Message}"); } } @@ -298,9 +313,9 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Room_SelectRoomAll, dic); var response = HttpHelper.JsonToModel>(result.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { - AntdUI.Modal.open(this, UIMessageConstant.Error, $"{ApiConstants.Room_SelectRoomAll}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Room_SelectRoomAll}+接口服务异常,请提交Issue或尝试更新版本!"); return; } romsty = response.Data.Items; @@ -315,9 +330,9 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Room_SelectRoomByTypeName, dic); var response = HttpHelper.JsonToModel>(result.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { - AntdUI.Modal.open(this, UIMessageConstant.Error, $"{ApiConstants.Room_SelectRoomByTypeName}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Room_SelectRoomByTypeName}+接口服务异常,请提交Issue或尝试更新版本!"); return; } romsty = response.Data.Items; @@ -350,9 +365,9 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Room_SelectRoomByRoomState, dic); var response = HttpHelper.JsonToModel>(result.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { - AntdUI.Modal.open(this, UIMessageConstant.Error, $"{ApiConstants.Room_SelectRoomByRoomState}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Room_SelectRoomByRoomState}+接口服务异常,请提交Issue或尝试更新版本!"); return; } romsty = response.Data.Items; diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomStateManagement.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomStateManagement.Designer.cs index dd7ee34..e2b621e 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomStateManagement.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomStateManagement.Designer.cs @@ -32,9 +32,9 @@ label2 = new Label(); label1 = new Label(); txtRoomNo = new AntdUI.Input(); - cboRoomState = new AntdUI.Dropdown(); btnOk = new AntdUI.Button(); ucWindowHeader1 = new ucWindowHeader(); + cboRoomState = new AntdUI.Select(); SuspendLayout(); // // label2 @@ -45,7 +45,7 @@ label2.Name = "label2"; label2.Size = new Size(88, 25); label2.TabIndex = 132; - label2.Text = "客户编号"; + label2.Text = "房间号码"; // // label1 // @@ -62,21 +62,10 @@ txtRoomNo.Font = new Font("Noto Sans SC", 12F); txtRoomNo.Location = new Point(99, 44); txtRoomNo.Name = "txtRoomNo"; + txtRoomNo.ReadOnly = true; txtRoomNo.Size = new Size(203, 45); txtRoomNo.TabIndex = 137; // - // cboRoomState - // - cboRoomState.DropDownArrow = true; - cboRoomState.Font = new Font("Noto Sans SC", 12F); - cboRoomState.Location = new Point(99, 98); - cboRoomState.Name = "cboRoomState"; - cboRoomState.Placement = AntdUI.TAlignFrom.Bottom; - cboRoomState.Size = new Size(200, 40); - cboRoomState.TabIndex = 138; - cboRoomState.ToggleType = AntdUI.TTypeMini.Info; - cboRoomState.SelectedValueChanged += cboRoomState_SelectedValueChanged; - // // btnOk // btnOk.Font = new Font("Noto Sans SC", 12F); @@ -95,24 +84,39 @@ ucWindowHeader1.Size = new Size(309, 35); ucWindowHeader1.TabIndex = 141; // + // cboRoomState + // + cboRoomState.Font = new Font("Noto Sans SC", 12F); + cboRoomState.List = true; + cboRoomState.ListAutoWidth = true; + cboRoomState.Location = new Point(99, 96); + cboRoomState.Name = "cboRoomState"; + cboRoomState.Placement = AntdUI.TAlignFrom.Bottom; + cboRoomState.Size = new Size(203, 45); + cboRoomState.TabIndex = 180; + cboRoomState.SelectedValueChanged += cboRoomState_SelectedValueChanged; + // // FrmRoomStateManager // AutoScaleDimensions = new SizeF(7F, 15F); AutoScaleMode = AutoScaleMode.Font; BackColor = Color.FromArgb(235, 243, 255); ClientSize = new Size(308, 196); + Controls.Add(cboRoomState); Controls.Add(ucWindowHeader1); Controls.Add(btnOk); - Controls.Add(cboRoomState); Controls.Add(txtRoomNo); Controls.Add(label1); Controls.Add(label2); Font = new Font("Microsoft Sans Serif", 9F, FontStyle.Regular, GraphicsUnit.Point, 134); + FormBorderStyle = FormBorderStyle.None; Icon = (Icon)resources.GetObject("$this.Icon"); Margin = new Padding(3, 4, 3, 4); MaximizeBox = false; MinimizeBox = false; Name = "FrmRoomStateManager"; + Resizable = false; + StartPosition = FormStartPosition.CenterScreen; Text = "修改房间状态"; Load += FrmRoomStateManager_Load; ResumeLayout(false); @@ -124,8 +128,8 @@ private System.Windows.Forms.Label label2; private System.Windows.Forms.Label label1; private AntdUI.Input txtRoomNo; - private AntdUI.Dropdown cboRoomState; private AntdUI.Button btnOk; private ucWindowHeader ucWindowHeader1; + private AntdUI.Select cboRoomState; } } \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomStateManagement.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomStateManagement.cs index c108956..cffc023 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomStateManagement.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomStateManagement.cs @@ -37,7 +37,7 @@ namespace EOM.TSHotelManagement.FormUI public FrmRoomStateManager() { InitializeComponent(); - ucWindowHeader1 = new ucWindowHeader("房间状态管理", string.Empty, (Image)resources.GetObject("FrmRoomStateManager.Icon")!); + ucWindowHeader1.ApplySettingsWithoutMinimize("房间状态管理", string.Empty, (Image)resources.GetObject("FrmRoomStateManager.Icon")!); } Dictionary dic = null; @@ -50,18 +50,16 @@ namespace EOM.TSHotelManagement.FormUI txtRoomNo.Text = ucRoom.rm_RoomNo; result = HttpHelper.Request(ApiConstants.Base_SelectRoomStateAll); var datas = HttpHelper.JsonToModel>(result.message); - if (datas.Code != 200) + if (datas.Success == false) { - AntdUI.Modal.open(this, UIMessageConstant.Error, $"{ApiConstants.Base_SelectRoomStateAll}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Base_SelectRoomStateAll}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - cboRoomState.Items.AddRange(datas.Data.Items.Select(item => new AntdUI.SelectItem(item.Name, item.Id)).ToArray()); - //cboState.DisplayMember = nameof(EnumDto.Description); - //cboState.ValueMember = nameof(EnumDto.Id); - //cboState.SelectedIndex = 0; + cboRoomState.Items.AddRange(datas.Data.Items.Select(item => new AntdUI.SelectItem(item.Description, item.Id)).ToArray()); + cboRoomState.SelectedIndex = 0; } #endregion - int selectedValue = 0; + int selectedValue = 1; #region 确定按钮点击事件 private void btnOk_Click(object sender, EventArgs e) { @@ -69,7 +67,7 @@ namespace EOM.TSHotelManagement.FormUI switch (selectedValue) { case (int)RoomState.Occupied: - AntdUI.Modal.open(this, UIMessageConstant.Warning, "不能设置为已住状态!"); + NotificationService.ShowWarning("不能设置为已住状态!"); break; case (int)RoomState.Vacant: case (int)RoomState.Maintenance: @@ -78,18 +76,18 @@ namespace EOM.TSHotelManagement.FormUI var updateRoom = new UpdateRoomInputDto { RoomNumber = txtRoomNo.Text.Trim(), RoomStateId = Convert.ToInt32(selectedValue) }; result = HttpHelper.Request(ApiConstants.Room_UpdateRoomStateByRoomNo, updateRoom.ModelToJson()); var response = HttpHelper.JsonToModel(result.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { - AntdUI.Modal.open(this, UIMessageConstant.Error, $"{ApiConstants.Room_UpdateRoomStateByRoomNo}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Room_UpdateRoomStateByRoomNo}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - AntdUI.Modal.open(this, UIMessageConstant.Success, "房间" + txtRoomNo.Text + "成功修改为" + cboRoomState.SelectedValue); + NotificationService.ShowSuccess("房间" + txtRoomNo.Text + "成功修改为" + cboRoomState.Text); FrmRoomManager.Reload(""); FrmRoomManager._RefreshRoomCount(); this.Close(); break; default: - AntdUI.Modal.open(this, UIMessageConstant.Warning, "请选择房间状态"); + NotificationService.ShowWarning("请选择房间状态"); break; } @@ -98,7 +96,7 @@ namespace EOM.TSHotelManagement.FormUI private void cboRoomState_SelectedValueChanged(object sender, ObjectNEventArgs e) { - selectedValue = Convert.ToInt32(e.Tag); + selectedValue = Convert.ToInt32(e.Value); } } } diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmScreenLock.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmScreenLock.Designer.cs index e18e5ba..3066508 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmScreenLock.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmScreenLock.Designer.cs @@ -61,7 +61,6 @@ // // FrmScreenLock // - AllowShowTitle = false; AutoScaleMode = AutoScaleMode.None; BackColor = Color.FromArgb(235, 243, 255); BackgroundImage = Properties.Resources.lock_screen; @@ -69,17 +68,17 @@ ClientSize = new Size(800, 450); Controls.Add(btnUnlock); Controls.Add(txtPassword); + FormBorderStyle = FormBorderStyle.None; Icon = (Icon)resources.GetObject("$this.Icon"); - IsForbidAltF4 = true; MaximizeBox = false; MinimizeBox = false; Name = "FrmScreenLock"; - Padding = new Padding(0); + Resizable = false; ShowIcon = false; ShowInTaskbar = false; - ShowTitle = false; + StartPosition = FormStartPosition.CenterScreen; Text = "系统已锁定"; - ZoomScaleRect = new Rectangle(15, 15, 800, 450); + TopMost = true; Load += FrmScreenLock_Load; ResumeLayout(false); } diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmScreenLock.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmScreenLock.cs index 2d37b5f..dbc877f 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmScreenLock.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmScreenLock.cs @@ -1,10 +1,10 @@ -using EOM.TSHotelManagement.Common; +using AntdUI; +using EOM.TSHotelManagement.Common; using jvncorelib.EncryptorLib; -using Sunny.UI; namespace EOM.TSHotelManagement.FormUI { - public partial class FrmScreenLock : UIForm + public partial class FrmScreenLock : Window { public FrmScreenLock() { @@ -25,7 +25,7 @@ namespace EOM.TSHotelManagement.FormUI { if (txtPassword.Text.Trim() == string.Empty) { - UIMessageBox.ShowError("密码不能为空,请重新输入!"); + NotificationService.ShowError("密码不能为空,请重新输入!"); txtPassword.Focus(); return; } @@ -36,7 +36,7 @@ namespace EOM.TSHotelManagement.FormUI } else { - UIMessageBox.ShowError("密码错误,请重新输入!"); + NotificationService.ShowError("密码错误,请重新输入!"); txtPassword.Focus(); txtPassword.Clear(); } diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.Designer.cs index 7b8613c..5df8dd6 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.Designer.cs @@ -30,14 +30,14 @@ { System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmSellThing)); groupBox2 = new GroupBox(); - txtPrice = new Sunny.UI.UITextBox(); - uiLabel6 = new Sunny.UI.UILabel(); - nudNum = new Sunny.UI.UIDoubleUpDown(); - uiLabel5 = new Sunny.UI.UILabel(); - txtSellName = new Sunny.UI.UITextBox(); - uiLabel4 = new Sunny.UI.UILabel(); - txtSellNo = new Sunny.UI.UITextBox(); - uiLabel3 = new Sunny.UI.UILabel(); + label6 = new AntdUI.Label(); + label5 = new AntdUI.Label(); + label4 = new AntdUI.Label(); + label3 = new AntdUI.Label(); + nudNum = new AntdUI.InputNumber(); + txtPrice = new AntdUI.Input(); + txtSellName = new AntdUI.Input(); + txtSellNo = new AntdUI.Input(); label1 = new AntdUI.Label(); txtFind = new AntdUI.Input(); btnFind = new AntdUI.Button(); @@ -56,14 +56,14 @@ // // groupBox2 // - groupBox2.Controls.Add(txtPrice); - groupBox2.Controls.Add(uiLabel6); + groupBox2.Controls.Add(label6); + groupBox2.Controls.Add(label5); + groupBox2.Controls.Add(label4); + groupBox2.Controls.Add(label3); groupBox2.Controls.Add(nudNum); - groupBox2.Controls.Add(uiLabel5); + groupBox2.Controls.Add(txtPrice); groupBox2.Controls.Add(txtSellName); - groupBox2.Controls.Add(uiLabel4); groupBox2.Controls.Add(txtSellNo); - groupBox2.Controls.Add(uiLabel3); groupBox2.Font = new Font("Microsoft Sans Serif", 9F, FontStyle.Regular, GraphicsUnit.Point, 134); groupBox2.Location = new Point(617, 88); groupBox2.Name = "groupBox2"; @@ -72,128 +72,84 @@ groupBox2.TabStop = false; groupBox2.Text = "订购中心"; // + // label6 + // + label6.BackColor = Color.Transparent; + label6.Font = new Font("微软雅黑", 12F); + label6.Location = new Point(258, 32); + label6.Name = "label6"; + label6.Size = new Size(61, 23); + label6.TabIndex = 38; + label6.Text = "数量:"; + // + // label5 + // + label5.BackColor = Color.Transparent; + label5.Font = new Font("微软雅黑", 12F); + label5.Location = new Point(258, 78); + label5.Name = "label5"; + label5.Size = new Size(61, 23); + label5.TabIndex = 37; + label5.Text = "单价:"; + // + // label4 + // + label4.BackColor = Color.Transparent; + label4.Font = new Font("微软雅黑", 12F); + label4.Location = new Point(26, 78); + label4.Name = "label4"; + label4.Size = new Size(92, 23); + label4.TabIndex = 36; + label4.Text = "商品名称:"; + label4.TextAlign = ContentAlignment.MiddleCenter; + // + // label3 + // + label3.BackColor = Color.Transparent; + label3.Font = new Font("微软雅黑", 12F); + label3.Location = new Point(26, 32); + label3.Name = "label3"; + label3.Size = new Size(92, 23); + label3.TabIndex = 35; + label3.Text = "商品编号:"; + label3.TextAlign = ContentAlignment.MiddleCenter; + // + // nudNum + // + nudNum.Font = new Font("微软雅黑", 12F); + nudNum.Location = new Point(307, 25); + nudNum.Name = "nudNum"; + nudNum.Size = new Size(119, 38); + nudNum.TabIndex = 34; + nudNum.Text = "0"; + nudNum.TextAlign = HorizontalAlignment.Center; + // // txtPrice // - txtPrice.Cursor = Cursors.IBeam; txtPrice.Font = new Font("微软雅黑", 12F); - txtPrice.Location = new Point(310, 74); - txtPrice.Margin = new Padding(4, 5, 4, 5); - txtPrice.MinimumSize = new Size(1, 1); + txtPrice.Location = new Point(307, 69); txtPrice.Name = "txtPrice"; - txtPrice.Padding = new Padding(5); - txtPrice.Radius = 20; txtPrice.ReadOnly = true; - txtPrice.ShowText = false; - txtPrice.Size = new Size(116, 29); - txtPrice.Style = Sunny.UI.UIStyle.Custom; - txtPrice.TabIndex = 30; - txtPrice.TextAlignment = ContentAlignment.MiddleLeft; - txtPrice.Watermark = ""; - // - // uiLabel6 - // - uiLabel6.Font = new Font("微软雅黑", 12F); - uiLabel6.ForeColor = Color.FromArgb(48, 48, 48); - uiLabel6.Location = new Point(258, 74); - uiLabel6.Name = "uiLabel6"; - uiLabel6.Size = new Size(61, 29); - uiLabel6.Style = Sunny.UI.UIStyle.Custom; - uiLabel6.TabIndex = 29; - uiLabel6.Text = "单价:"; - uiLabel6.TextAlign = ContentAlignment.MiddleLeft; - // - // nudNum - // - nudNum.AutoValidate = AutoValidate.Disable; - nudNum.Font = new Font("新宋体", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); - nudNum.Location = new Point(310, 30); - nudNum.Margin = new Padding(4, 5, 4, 5); - nudNum.Maximum = 9999D; - nudNum.Minimum = 0D; - nudNum.MinimumSize = new Size(100, 0); - nudNum.Name = "nudNum"; - nudNum.Radius = 20; - nudNum.ShowText = false; - nudNum.Size = new Size(116, 29); - nudNum.Step = 1D; - nudNum.Style = Sunny.UI.UIStyle.Custom; - nudNum.StyleCustomMode = true; - nudNum.TabIndex = 25; - nudNum.Text = null; - nudNum.TextAlignment = ContentAlignment.MiddleCenter; - nudNum.ValueChanged += nudNum_ValueChanged; - // - // uiLabel5 - // - uiLabel5.Font = new Font("微软雅黑", 12F); - uiLabel5.ForeColor = Color.FromArgb(48, 48, 48); - uiLabel5.Location = new Point(258, 30); - uiLabel5.Name = "uiLabel5"; - uiLabel5.Size = new Size(61, 29); - uiLabel5.Style = Sunny.UI.UIStyle.Custom; - uiLabel5.TabIndex = 28; - uiLabel5.Text = "数量:"; - uiLabel5.TextAlign = ContentAlignment.MiddleLeft; + txtPrice.Size = new Size(119, 38); + txtPrice.TabIndex = 33; // // txtSellName // - txtSellName.Cursor = Cursors.IBeam; txtSellName.Font = new Font("微软雅黑", 12F); - txtSellName.Location = new Point(107, 74); - txtSellName.Margin = new Padding(4, 5, 4, 5); - txtSellName.MinimumSize = new Size(1, 1); + txtSellName.Location = new Point(107, 69); txtSellName.Name = "txtSellName"; - txtSellName.Padding = new Padding(5); - txtSellName.Radius = 20; txtSellName.ReadOnly = true; - txtSellName.ShowText = false; - txtSellName.Size = new Size(145, 29); - txtSellName.Style = Sunny.UI.UIStyle.Custom; - txtSellName.TabIndex = 27; - txtSellName.TextAlignment = ContentAlignment.MiddleLeft; - txtSellName.Watermark = ""; - // - // uiLabel4 - // - uiLabel4.Font = new Font("微软雅黑", 12F); - uiLabel4.ForeColor = Color.FromArgb(48, 48, 48); - uiLabel4.Location = new Point(26, 73); - uiLabel4.Name = "uiLabel4"; - uiLabel4.Size = new Size(92, 29); - uiLabel4.Style = Sunny.UI.UIStyle.Custom; - uiLabel4.TabIndex = 26; - uiLabel4.Text = "商品名称:"; - uiLabel4.TextAlign = ContentAlignment.MiddleLeft; + txtSellName.Size = new Size(145, 38); + txtSellName.TabIndex = 32; // // txtSellNo // - txtSellNo.Cursor = Cursors.IBeam; txtSellNo.Font = new Font("微软雅黑", 12F); - txtSellNo.Location = new Point(107, 30); - txtSellNo.Margin = new Padding(4, 5, 4, 5); - txtSellNo.MinimumSize = new Size(1, 1); + txtSellNo.Location = new Point(107, 25); txtSellNo.Name = "txtSellNo"; - txtSellNo.Padding = new Padding(5); - txtSellNo.Radius = 20; txtSellNo.ReadOnly = true; - txtSellNo.ShowText = false; - txtSellNo.Size = new Size(145, 29); - txtSellNo.Style = Sunny.UI.UIStyle.Custom; - txtSellNo.TabIndex = 25; - txtSellNo.TextAlignment = ContentAlignment.MiddleLeft; - txtSellNo.Watermark = ""; - // - // uiLabel3 - // - uiLabel3.Font = new Font("微软雅黑", 12F); - uiLabel3.ForeColor = Color.FromArgb(48, 48, 48); - uiLabel3.Location = new Point(26, 29); - uiLabel3.Name = "uiLabel3"; - uiLabel3.Size = new Size(92, 29); - uiLabel3.Style = Sunny.UI.UIStyle.Custom; - uiLabel3.TabIndex = 23; - uiLabel3.Text = "商品编号:"; - uiLabel3.TextAlign = ContentAlignment.MiddleLeft; + txtSellNo.Size = new Size(145, 38); + txtSellNo.TabIndex = 31; // // label1 // @@ -282,7 +238,6 @@ // // btnPg // - btnPg.Current = 0; btnPg.Font = new Font("微软雅黑", 12F); btnPg.Location = new Point(4, 448); btnPg.Name = "btnPg"; @@ -352,10 +307,12 @@ Controls.Add(txtFind); Controls.Add(label1); Controls.Add(groupBox2); + FormBorderStyle = FormBorderStyle.None; Icon = (Icon)resources.GetObject("$this.Icon"); MaximizeBox = false; MinimizeBox = false; Name = "FrmSellThing"; + Resizable = false; Text = "商品消费"; Load += FrmSellThing_Load; groupBox2.ResumeLayout(false); @@ -364,15 +321,6 @@ #endregion private System.Windows.Forms.GroupBox groupBox2; - //private Sunny.UI.UIDataGridView dgvRoomSell; - private Sunny.UI.UITextBox txtPrice; - private Sunny.UI.UILabel uiLabel6; - private Sunny.UI.UIDoubleUpDown nudNum; - private Sunny.UI.UILabel uiLabel5; - private Sunny.UI.UITextBox txtSellName; - private Sunny.UI.UILabel uiLabel4; - private Sunny.UI.UITextBox txtSellNo; - private Sunny.UI.UILabel uiLabel3; private System.Windows.Forms.DataGridViewTextBoxColumn clRoomNo; private System.Windows.Forms.DataGridViewTextBoxColumn clCustoNo; private System.Windows.Forms.DataGridViewTextBoxColumn clSpendName; @@ -410,5 +358,13 @@ private AntdUI.Button btnCancel; private AntdUI.Table dgvRoomSell; private ucWindowHeader ucWindowHeader1; + private AntdUI.InputNumber nudNum; + private AntdUI.Input txtPrice; + private AntdUI.Input txtSellName; + private AntdUI.Input txtSellNo; + private AntdUI.Label label6; + private AntdUI.Label label5; + private AntdUI.Label label4; + private AntdUI.Label label3; } } \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.cs index 87fa903..ac03a9f 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.cs @@ -42,12 +42,15 @@ namespace EOM.TSHotelManagement.FormUI ReadRoomOutputDto r = null; private static ReadSpendOutputDto spend = null; + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmSellThing)); private LoadingProgress loadingProgress; public FrmSellThing() { InitializeComponent(); loadingProgress = new LoadingProgress(); + + ucWindowHeader1.ApplySettingsWithoutMinimize("商品消费", string.Empty, (Image)resources.GetObject("FrmSellThing.Icon")!); } #region 窗体加载事件 @@ -77,9 +80,9 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Sellthing_SelectSellThingAll, dic); var response = HttpHelper.JsonToModel>(result.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { - AntdUI.Modal.open(this, UIMessageConstant.Error, $"{ApiConstants.Sellthing_SelectSellThingAll}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Sellthing_SelectSellThingAll}+接口服务异常,请提交Issue或尝试更新版本!"); return; } @@ -112,9 +115,9 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Spend_SelectSpendByRoomNo, dic); var response = HttpHelper.JsonToModel>(result.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { - AntdUI.Modal.open(this, UIMessageConstant.Error, $"{ApiConstants.Spend_SelectSpendByRoomNo}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Spend_SelectSpendByRoomNo}+接口服务异常,请提交Issue或尝试更新版本!"); return; } List lstData = response.Data.Items; @@ -155,7 +158,7 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Sellthing_SelectSellThingAll, dic); var response = HttpHelper.JsonToModel>(result.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { AntdUI.Message.error(this, $"{ApiConstants.Sellthing_SelectSellThingAll}+接口服务异常,请提交Issue或尝试更新版本!"); return null!; @@ -177,31 +180,31 @@ namespace EOM.TSHotelManagement.FormUI { if (string.IsNullOrEmpty(txtRoomNo.Text)) { - AntdUI.Modal.open(this, UIMessageConstant.Warning, "消费房间不能为空"); + NotificationService.ShowWarning("消费房间不能为空"); txtRoomNo.Focus(); return false; } if (string.IsNullOrEmpty(txtSellNo.Text)) { - AntdUI.Modal.open(this, UIMessageConstant.Warning, "商品编号不能为空"); + NotificationService.ShowWarning("商品编号不能为空"); txtSellNo.Focus(); return false; } if (string.IsNullOrEmpty(txtSellName.Text)) { - AntdUI.Modal.open(this, UIMessageConstant.Warning, "商品名称不能为空"); + NotificationService.ShowWarning("商品名称不能为空"); txtSellName.Focus(); return false; } if (string.IsNullOrEmpty(txtPrice.Text)) { - AntdUI.Modal.open(this, UIMessageConstant.Warning, "商品单价不能为空"); + NotificationService.ShowWarning("商品单价不能为空"); txtPrice.Focus(); return false; } if (nudNum.Value <= 0) { - AntdUI.Modal.open(this, UIMessageConstant.Warning, "数量不能小于或等于0"); + NotificationService.ShowWarning("数量不能小于或等于0"); txtPrice.Focus(); return false; } @@ -218,12 +221,12 @@ namespace EOM.TSHotelManagement.FormUI { if (lblState.Visible == false) { - AntdUI.Modal.open(this, UIMessageConstant.Warning, "请先输入消费的房间!"); + NotificationService.ShowWarning("请先输入消费的房间!"); return; } if (nudNum.Value <= 0) { - AntdUI.Modal.open(this, UIMessageConstant.Warning, "请输入消费数量!"); + NotificationService.ShowWarning("请输入消费数量!"); return; } if (lblState.Text == "该房间可消费") @@ -244,19 +247,19 @@ namespace EOM.TSHotelManagement.FormUI }; var result = HttpHelper.Request(ApiConstants.Spend_AddCustomerSpend, customerSpend.ModelToJson()); var response = HttpHelper.JsonToModel(result.message!); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { - AntdUI.Modal.open(this, UIMessageConstant.Error, response.Message ?? "添加消费记录失败"); + NotificationService.ShowError(response.Message ?? "添加消费记录失败"); return; } - AntdUI.Modal.open(this, UIMessageConstant.Success, "添加成功"); + NotificationService.ShowSuccess("添加成功"); LoadSpendInfoByRoomNo(txtRoomNo.Text.Trim()); LoadSellThingInfo(); } catch (Exception ex) { - AntdUI.Modal.open(this, UIMessageConstant.Error, $"接口调用异常: {ex.Message}"); + NotificationService.ShowError($"接口调用异常: {ex.Message}"); return; } } @@ -271,14 +274,14 @@ namespace EOM.TSHotelManagement.FormUI { if (lblState.Visible == false) { - AntdUI.Modal.open(this, UIMessageConstant.Warning, "请先输入消费的房间!"); + NotificationService.ShowWarning("请先输入消费的房间!"); return; } if (!spend.IsNullOrEmpty()) { if (spend.ConsumptionType == SpendType.Room.Code || spend.ConsumptionType == SpendType.Other.Code) { - AntdUI.Modal.open(this, UIMessageConstant.Error, $"此条消费记录非{SpendType.Product.Description}记录,无法删除!"); + NotificationService.ShowError($"此条消费记录非{SpendType.Product.Description}记录,无法删除!"); return; } var dr = AntdUI.Modal.open(new AntdUI.Modal.Config(this, UIMessageConstant.Information, $"你确定要撤回该消费记录吗?", AntdUI.TType.Info) @@ -298,9 +301,9 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Sellthing_SelectSellThingByNameAndPrice, dic); var response = HttpHelper.JsonToModel>(result.message); - if (response.Code != BusinessStatusCode.Success) + if (response.Success == false) { - AntdUI.Modal.open(this, UIMessageConstant.Error, $"{ApiConstants.Sellthing_SelectSellThingByNameAndPrice}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Sellthing_SelectSellThingByNameAndPrice}+接口服务异常,请提交Issue或尝试更新版本!"); return; } ReadSellThingOutputDto s = response.Data; @@ -309,21 +312,21 @@ namespace EOM.TSHotelManagement.FormUI var model = new UpdateSpendInputDto { SpendNumber = spend.SpendNumber }; result = HttpHelper.Request(ApiConstants.Spend_UndoCustomerSpend, model.ModelToJson()); var undoSpendResponse = HttpHelper.JsonToModel(result.message); - if (undoSpendResponse.Code != BusinessStatusCode.Success) + if (undoSpendResponse.Success == false) { - AntdUI.Modal.open(this, UIMessageConstant.Error, $"{ApiConstants.Spend_UndoCustomerSpend}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Spend_UndoCustomerSpend}+接口服务异常,请提交Issue或尝试更新版本!"); return; } var sellThing = new UpdateSellThingInputDto { ProductName = s.ProductName, ProductPrice = s.ProductPrice, Stock = inboundStock, ProductNumber = s.ProductNumber, Specification = s.Specification }; result = HttpHelper.Request(ApiConstants.Sellthing_UpdateSellthingInfo, sellThing.ModelToJson()); var updateResponse = HttpHelper.JsonToModel(result.message); - if (updateResponse.Code != BusinessStatusCode.Success) + if (updateResponse.Success == false) { RecordHelper.Record($"接口异常。Message:\n{updateResponse.Message}", Common.Core.LogLevel.Critical); - AntdUI.Modal.open(this, UIMessageConstant.Error, $"{ApiConstants.Sellthing_UpdateSellthingInfo}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Sellthing_UpdateSellthingInfo}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - AntdUI.Modal.open(this, UIMessageConstant.Success, "撤销成功!"); + NotificationService.ShowSuccess("撤销成功!"); #region 获取添加操作日志所需的信息 RecordHelper.Record(LoginInfo.WorkerNo + "-" + LoginInfo.WorkerName + "在" + Convert.ToDateTime(DateTime.Now) + "位于" + LoginInfo.SoftwareVersion + "执行:" + "帮助" + spend.CustomerNumber + "撤销了消费商品:" + txtSellName.Text + "操作!", Common.Core.LogLevel.Warning); #endregion @@ -341,20 +344,12 @@ namespace EOM.TSHotelManagement.FormUI } else { - AntdUI.Modal.open(this, UIMessageConstant.Warning, "操作取消!"); + NotificationService.ShowWarning("操作取消!"); } } else { - AntdUI.Modal.open(this, UIMessageConstant.Warning, "请选择要删除的消费记录!"); - } - } - - private void nudNum_ValueChanged(object sender, double value) - { - if (nudNum.Value < 0) - { - nudNum.Value = 0; + NotificationService.ShowWarning("请选择要删除的消费记录!"); } } @@ -373,7 +368,7 @@ namespace EOM.TSHotelManagement.FormUI string room = txtRoomNo.Text.Trim(); if (string.IsNullOrWhiteSpace(room) == true) { - AntdUI.Modal.open(this, UIMessageConstant.Warning, "请输入消费房间号!"); + NotificationService.ShowWarning("请输入消费房间号!"); return; } dic = new Dictionary() @@ -382,9 +377,9 @@ namespace EOM.TSHotelManagement.FormUI }; result = HttpHelper.Request(ApiConstants.Room_SelectRoomByRoomNo, dic); var checkResponse = HttpHelper.JsonToModel>(result.message); - if (checkResponse.Code != BusinessStatusCode.Success) + if (checkResponse.Success == false) { - AntdUI.Modal.open(this, UIMessageConstant.Error, $"{ApiConstants.Room_SelectRoomByRoomNo}+接口服务异常,请提交Issue或尝试更新版本!"); + NotificationService.ShowError($"{ApiConstants.Room_SelectRoomByRoomNo}+接口服务异常,请提交Issue或尝试更新版本!"); return; } ReadRoomOutputDto r = checkResponse.Data; @@ -421,7 +416,7 @@ namespace EOM.TSHotelManagement.FormUI { if (lblState.Visible == false) { - AntdUI.Modal.open(this, UIMessageConstant.Warning, "请先输入消费的房间!"); + NotificationService.ShowWarning("请先输入消费的房间!"); return; } if (e.Record is IList data) diff --git a/EOM.TSHotelManagement.FormUI/EOM.TSHotelManagement.FormUI.csproj b/EOM.TSHotelManagement.FormUI/EOM.TSHotelManagement.FormUI.csproj index e8208b7..a4a3e0f 100644 --- a/EOM.TSHotelManagement.FormUI/EOM.TSHotelManagement.FormUI.csproj +++ b/EOM.TSHotelManagement.FormUI/EOM.TSHotelManagement.FormUI.csproj @@ -37,9 +37,6 @@ Form - - Form - Form @@ -47,9 +44,6 @@ Form - - Form - Form @@ -118,11 +112,10 @@ - + - diff --git a/EOM.TSHotelManagement.FormUI/Services/NotificationService.cs b/EOM.TSHotelManagement.FormUI/Services/NotificationService.cs new file mode 100644 index 0000000..369689a --- /dev/null +++ b/EOM.TSHotelManagement.FormUI/Services/NotificationService.cs @@ -0,0 +1,55 @@ +using AntdUI; +using EOM.TSHotelManagement.Common; +using EOM.TSHotelManagement.Common.Util; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace EOM.TSHotelManagement.FormUI +{ + public static class NotificationService + { + public static void ShowSuccess(string message) + { + Modal.open(new Modal.Config(null, UIMessageConstant.Success, message, TType.Success) + { + Draggable = true, + CancelText = null, + OkText = LocalizationHelper.GetLocalizedString(UIMessageConstant.Eng_Ok, UIMessageConstant.Chs_Ok) + }); + } + + public static void ShowError(string message) + { + Modal.open(new Modal.Config(null, UIMessageConstant.Error, message, TType.Error) + { + Draggable = true, + CancelText = null, + OkText = LocalizationHelper.GetLocalizedString(UIMessageConstant.Eng_Ok, UIMessageConstant.Chs_Ok) + }); + } + + public static void ShowInfo(string message) + { + Modal.open(new Modal.Config(null, UIMessageConstant.Information, message, TType.Info) + { + Draggable = true, + CancelText = null, + OkText = LocalizationHelper.GetLocalizedString(UIMessageConstant.Eng_Ok, UIMessageConstant.Chs_Ok) + }); + } + + public static void ShowWarning(string message) + { + Modal.open(new Modal.Config(null, UIMessageConstant.Warning, message, TType.Warn) + { + Draggable = true, + CancelText = null, + OkText = LocalizationHelper.GetLocalizedString(UIMessageConstant.Eng_Ok, UIMessageConstant.Chs_Ok) + }); + } + } +} diff --git a/EOM.TSHotelManagement.FormUI/icon/update.ico b/EOM.TSHotelManagement.FormUI/icon/update.ico new file mode 100644 index 0000000000000000000000000000000000000000..6320dd6632ce4c62e78027c34e6dedfeb1de0c19 GIT binary patch literal 4286 zcmbtUF_POb4CKufS1MInsmw3Tr>M&_bXU2&C#cOY=ox1w&wxGm0lRadF|(_P9vCKV zDMkiI5ZGNnkR0b;@ULkc|GHn_ocr#a`vFJFc{uZzsz- z^@yzr5WtrZK}+*EcThUn{?q|R6z);z$;p`^dfa=JyEnJp zfudc7#orK6R)hCevvV`2T!ycyjElXg!MY+`{;yFvhHdJXJ5jgKkm!$klP3v`^MXel zR6geV>Kw3khKrWQ=@^_=^$^59)fuZA!#R4Kf%|NePU!^3&U^En0n@{^`I6p}JOtT0 zC}Ba|?M?0CZYMl3+KTvlb3lN-MGGOm*}K&M#v2Z=0-rSpaO|sp zXSj~`uy>jT=-liS5qN-)-yKfQN^hrJz?rjIv#0(%A=1Ee&ymwF<%AkqcWDeh=jh=} zOaOkWubmTmX&>B4fD4=^lLwrvdCR?bkFkq!^BSXjiGy?9soJd$tD)Y-bG46gy@mfd zciZ*QeSHqyz8bnCy-xo7=b_%b9_!89vD&>IKM&RZ^HlHG!|H2$j$87f^LFUY)u}$! R!|P^sMxXfp663Cle*rlQ6}JEY literal 0 HcmV?d00001 diff --git a/topsky-hotel-management-system-web-api b/topsky-hotel-management-system-web-api index 16cd5be..8d07e65 160000 --- a/topsky-hotel-management-system-web-api +++ b/topsky-hotel-management-system-web-api @@ -1 +1 @@ -Subproject commit 16cd5be9df042e2453d302e13e4374923d2e6993 +Subproject commit 8d07e6522dab3b89d44ddb42b42d8a65f39ad085 -- Gitee From db99a8395f0d72a643cdab87a6d87336898ebe5e Mon Sep 17 00:00:00 2001 From: ck_yeun9 Date: Sun, 31 Aug 2025 14:47:42 +0800 Subject: [PATCH 12/15] update README --- README.en.md | 18 +++++++++++++----- README.md | 18 +++++++++++++----- 2 files changed, 26 insertions(+), 10 deletions(-) diff --git a/README.en.md b/README.en.md index 6b839b6..fbce1af 100644 --- a/README.en.md +++ b/README.en.md @@ -24,8 +24,6 @@ 2. ##### SQLSugar, the most popular ORM framework in China. [SQLSugar, Apache-2.0 License](https://gitee.com/dotnetchina/SqlSugar) -3. ##### SunnyUI—SunnyUI.Net, based on C# .Net WinForm open-source control library, tool library, extension library, and multi-page development framework. [SunnyUI.Net, GPL3.0 License](https://gitee.com/yhuse/SunnyUI) - 4. ##### **RestSharp——Simple REST and HTTP API Client for .NET。[RestSharp,Apache-2.0 License](https://github.com/restsharp/RestSharp)** 5. ##### AntdUI——基于 Ant Design 设计语言的 Winform 界面库. AntdUI。[AntdUI,Apache-2.0 License](https://gitee.com/antdui/AntdUI) @@ -36,7 +34,7 @@ 2. Bugs and comments are welcome! -3. This system’s 95% of the pages are created based on the SunnyUI.Net control library, hereby specially declared! +3. This system’s 95% of the pages are created based on the AntdUI.Net control library, hereby specially declared! 4. Regarding the database script issue, please first go to the database script folder, choose either the MySQL version or PostgreSQL version folder to download the Data and Table files. In the database, execute the Table.sql first, then the Data.sql! @@ -133,8 +131,18 @@ EOM.Client.TopSkyHotelManagerSystem **Download and install .NET SDK version 8 or above.** **Download and install Microsoft Visual Studio Professional 2022 or above, unzip the downloaded Zip package, and run the .sln file.** -# :inbox_tray: Database Setup and Deployment (Local): +# :inbox_tray: Open Source Linsense: + +[MIT Linsense](https://gitee.com/java-and-net/TopskyHotelManagementSystem/blob/master/LICENSE) + +# :pray: Rely on the project's open source license: + +Fody [MIT Linsense](https://github.com/Fody/Fody/blob/master/License.txt) + +SQLSugar [Apache-2.0 Linsense](https://gitee.com/dotnetchina/SqlSugar/blob/master/LICENSE) + +RestSharp [Apache-2.0 Linsense](https://github.com/restsharp/RestSharp/blob/dev/LICENSE.txt) -**Omitted. This project does not include backend business logic. For details, please refer to: [Business Logic Project](https://gitee.com/java-and-net/topsky-hotel-management-system-web-api/blob/master/README.en.md)** +AntdUI [Apache-2.0 Linsense](https://gitee.com/AntdUI/AntdUI/blob/main/LICENSE) [![java-and-net/TopskyHotelManagementSystem](https://gitee.com/java-and-net/TopskyHotelManagementSystem/widgets/widget_card.svg?colors=4183c4,ffffff,ffffff,e3e9ed,666666,9b9b9b)](https://gitee.com/java-and-net/TopskyHotelManagerSystem) diff --git a/README.md b/README.md index 319cb6c..4c387e7 100644 --- a/README.md +++ b/README.md @@ -26,8 +26,6 @@ 2. ##### SQLSugar,国内最受欢迎ORM框架[SQLSugar。 [Apache-2.0开源协议](https://gitee.com/dotnetchina/SqlSugar) -3. ##### SunnyUI——SunnyUI.Net, 基于 C# .Net WinForm 开源控件库、工具类库、扩展类库、多页面开发框架。[SunnyUI.Net,GPL3.0开源协议](https://gitee.com/yhuse/SunnyUI) - 4. ##### **RestSharp——Simple REST and HTTP API Client for .NET。[RestSharp,Apache-2.0开源协议](https://github.com/restsharp/RestSharp)** 5. ##### AntdUI——👚 基于 Ant Design 设计语言的 Winform 界面库。[AntdUI,Apache-2.0开源协议](https://gitee.com/antdui/AntdUI) @@ -38,7 +36,7 @@ 2、有bug欢迎提出issue!或进行评论 -3、本系统UI框架主要基于Sunny.UI和AntdUI进行创建,在此特别声明! +3、本系统UI框架主要基于AntdUI进行创建,在此特别声明! 4、关于数据库脚本问题,请先移步至数据库脚本文件夹下,选择Mysql版本或PostgreSQL版本任意文件夹下载Data和Table两个文件,再数据库中先执行Table.sql,再执行Data.sql! @@ -134,8 +132,18 @@ EOM.Client.TopskyHotelManagementSystem **下载并安装.NET 8及以上SDK版本。** **下载并安装Microsoft Visual Studio Professional 2022及以上版本,并通过下载Zip包解压,打开.sln后缀格式文件运行。** -# :inbox_tray: 数据库运行部署(本地): +# :inbox_tray: 开源协议: + +[MIT Linsense](https://gitee.com/java-and-net/TopskyHotelManagementSystem/blob/master/LICENSE) + +# :inbox_tray: 依赖项目开源协议: + +Fody [MIT Linsense](https://github.com/Fody/Fody/blob/master/License.txt) + +SQLSugar [Apache-2.0 Linsense](https://gitee.com/dotnetchina/SqlSugar/blob/master/LICENSE) + +RestSharp [Apache-2.0 Linsense](https://github.com/restsharp/RestSharp/blob/dev/LICENSE.txt) -**略,本项目不包含后台业务逻辑。详情请查看:[业务逻辑项目](https://gitee.com/java-and-net/topsky-hotel-management-system-web-api/blob/master/README.md#%E6%95%B0%E6%8D%AE%E5%BA%93%E8%BF%90%E8%A1%8C%E9%83%A8%E7%BD%B2%E6%9C%AC%E5%9C%B0)** +AntdUI [Apache-2.0 Linsense](https://gitee.com/AntdUI/AntdUI/blob/main/LICENSE) [![java-and-net/TopskyHotelManagementSystem](https://gitee.com/java-and-net/TopskyHotelManagementSystem/widgets/widget_card.svg?colors=4183c4,ffffff,ffffff,e3e9ed,666666,9b9b9b)](https://gitee.com/java-and-net/TopskyHotelManagerSystem) \ No newline at end of file -- Gitee From 42900e163be4420d89fb18e64b97ed8c210cd304 Mon Sep 17 00:00:00 2001 From: ck_yeun9 Date: Sat, 6 Sep 2025 14:22:59 +0800 Subject: [PATCH 13/15] replace all control from Sunny.UI to Antd.UI. remove no use api constant. remove no use image resources. fix logic incorrect. --- .../BackendApi/ApiConstants.cs | 12 +- .../UIControlConstant.cs | 8 +- .../UIControlIconConstant.cs | 8 +- .../UIMessageConstant.cs | 9 +- .../Util/RecordHelper.cs | 2 + .../ClientCustomControls/ucRoom.Designer.cs | 2 +- .../ClientCustomControls/ucRoom.cs | 8 - .../ucRoomType.Designer.cs | 2 +- .../ClientCustomControls/ucRoomType.cs | 2 +- .../ucWindowHeader.Designer.cs | 17 +- .../ClientCustomControls/ucWindowHeader.cs | 26 +- .../ClientEntrance/FrmLoading.Designer.cs | 7 + .../ClientEntrance/FrmLoading.cs | 3 +- .../ClientEntrance/FrmLogin.Designer.cs | 74 +-- .../ClientMain/FrmMain.Designer.cs | 72 +-- .../ClientMain/FrmMain.cs | 11 +- .../ClientMain/FrmMain.resx | 39 ++ .../ClientModule/FrmAbout.Designer.cs | 16 +- .../FrmAccountSecurity.Designer.cs | 7 +- .../ClientModule/FrmAccountSecurity.cs | 9 - .../ClientModule/FrmAvator.Designer.cs | 1 + .../ClientModule/FrmAvator.cs | 9 - .../ClientModule/FrmChangeRoom.Designer.cs | 17 +- .../FrmCheckOutDetail.Designer.cs | 10 +- .../ClientModule/FrmCheckOutDetail.cs | 39 +- .../FrmCustomerManagement.Designer.cs | 17 +- .../ClientModule/FrmPersonnelInfo.cs | 10 +- .../ClientModule/FrmProgress.Designer.cs | 1 + .../ClientModule/FrmReserList.Designer.cs | 86 ++-- .../ClientModule/FrmReserList.cs | 2 +- .../FrmReserManagement.Designer.cs | 106 ++--- .../ClientModule/FrmReserManagement.cs | 21 +- .../FrmRoomManagement.Designer.cs | 60 +-- .../ClientModule/FrmRoomManagement.cs | 3 - .../FrmRoomStateManagement.Designer.cs | 12 +- .../ClientModule/FrmSellThing.Designer.cs | 64 +-- .../ClientModule/FrmSellThing.cs | 23 +- .../EOM.TSHotelManagement.FormUI.csproj | 2 +- .../Properties/Resources.Designer.cs | 440 ------------------ .../Properties/Resources.resx | 132 ------ .../Resources/arrow-down-b.png | Bin 1706 -> 0 bytes .../Resources/blue_refresh.png | Bin 555 -> 0 bytes .../Resources/close.png | Bin 1789 -> 0 bytes ...ICaP4M8cef_PIC2018.jpg!w1024_new_small.png | Bin 307506 -> 0 bytes .../Resources/picExtend.Image.png | Bin 3561 -> 0 bytes .../Resources/picExtend.ImageHover.png | Bin 3225 -> 0 bytes ...2\344\274\240\347\205\247\347\211\207.png" | Bin 8061 -> 0 bytes ...2\344\272\272\344\270\255\345\277\203.png" | Bin 925 -> 0 bytes ...0\351\203\250\345\215\241\347\211\207.png" | Bin 56414 -> 0 bytes .../Resources/\344\277\256\346\224\271.png" | Bin 21266 -> 0 bytes ...3\344\272\216\346\210\221\344\273\254.png" | Bin 820 -> 0 bytes ...7\351\203\250\345\215\241\347\211\207.png" | Bin 54470 -> 0 bytes ...7\346\215\242\350\264\246\345\217\267.png" | Bin 1049 -> 0 bytes ...57\344\275\217\346\210\277(hover)icon.png" | Bin 5844 -> 0 bytes ...5\217\257\344\275\217\346\210\277icon.png" | Bin 4772 -> 0 bytes ...4\351\203\250\345\215\241\347\211\207.png" | Bin 54489 -> 0 bytes .../Resources/\345\222\226\345\225\241.png" | Bin 835 -> 0 bytes ...1\351\203\250\345\215\241\347\211\207.png" | Bin 54033 -> 0 bytes ...62\344\275\217\346\210\277(hover)icon.png" | Bin 6682 -> 0 bytes ...5\267\262\344\275\217\346\210\277icon.png" | Bin 5294 -> 0 bytes ...0\351\227\250\345\215\241\347\211\207.png" | Bin 52899 -> 0 bytes ...7\345\212\236\345\215\241\347\211\207.png" | Bin 54090 -> 0 bytes .../Resources/\346\227\251\344\270\212.png" | Bin 557 -> 0 bytes ...6\351\200\232\344\274\232\345\221\230.png" | Bin 7916 -> 0 bytes .../Resources/\346\234\210\344\272\256.png" | Bin 769 -> 0 bytes ...6\237\245\346\233\264\346\226\260 (1).png" | Bin 804 -> 0 bytes .../Resources/\346\263\250\351\224\200.png" | Bin 751 -> 0 bytes ...5\351\207\221\344\274\232\345\221\230.png" | Bin 5609 -> 0 bytes ...7\347\273\204\345\215\241\347\211\207.png" | Bin 54206 -> 0 bytes ...7\347\256\241\347\220\206\345\221\230.png" | Bin 928 -> 0 bytes ...6\351\203\250\345\215\241\347\211\207.png" | Bin 54980 -> 0 bytes ...64\344\277\256\346\210\277(hover)icon.png" | Bin 7806 -> 0 bytes ...7\273\264\344\277\256\346\210\277icon.png" | Bin 6431 -> 0 bytes ...6\351\203\250\345\215\241\347\211\207.png" | Bin 55256 -> 0 bytes .../\350\204\217\346\210\277(hover)icon.png" | Bin 6261 -> 0 bytes .../\350\204\217\346\210\277icon1.png" | Bin 4871 -> 0 bytes ...1\351\203\250\345\215\241\347\211\207.png" | Bin 54171 -> 0 bytes ...7\351\203\250\345\215\241\347\211\207.png" | Bin 53948 -> 0 bytes ...3\347\237\263\344\274\232\345\221\230.png" | Bin 12504 -> 0 bytes .../Resources/\351\224\201\345\261\217.png" | Bin 555 -> 0 bytes ...04\347\272\246\346\210\277(hover)icon.png" | Bin 7636 -> 0 bytes ...1\242\204\347\272\246\346\210\277icon.png" | Bin 6237 -> 0 bytes ...6\351\203\250\345\215\241\347\211\207.png" | Bin 54153 -> 0 bytes ...4\351\207\221\344\274\232\345\221\230.png" | Bin 5191 -> 0 bytes .../Services/NotificationService.cs | 8 +- .../images/blue_refresh.png | Bin 555 -> 0 bytes 86 files changed, 397 insertions(+), 1000 deletions(-) delete mode 100644 EOM.TSHotelManagement.FormUI/Resources/arrow-down-b.png delete mode 100644 EOM.TSHotelManagement.FormUI/Resources/blue_refresh.png delete mode 100644 EOM.TSHotelManagement.FormUI/Resources/close.png delete mode 100644 EOM.TSHotelManagement.FormUI/Resources/jpg_auto_04N58PICPw2s58PICaP4M8cef_PIC2018.jpg!w1024_new_small.png delete mode 100644 EOM.TSHotelManagement.FormUI/Resources/picExtend.Image.png delete mode 100644 EOM.TSHotelManagement.FormUI/Resources/picExtend.ImageHover.png delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\344\270\212\344\274\240\347\205\247\347\211\207.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\344\270\252\344\272\272\344\270\255\345\277\203.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\344\272\272\345\212\233\350\265\204\346\272\220\351\203\250\345\215\241\347\211\207.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\344\277\256\346\224\271.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\345\205\263\344\272\216\346\210\221\344\273\254.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\345\206\205\346\216\247\351\203\250\345\215\241\347\211\207.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\345\210\207\346\215\242\350\264\246\345\217\267.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\345\217\257\344\275\217\346\210\277(hover)icon.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\345\217\257\344\275\217\346\210\277icon.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\345\220\216\345\213\244\351\203\250\345\215\241\347\211\207.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\345\222\226\345\225\241.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\345\225\206\345\223\201\351\203\250\345\215\241\347\211\207.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\345\267\262\344\275\217\346\210\277(hover)icon.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\345\267\262\344\275\217\346\210\277icon.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\345\270\270\350\247\204\351\203\250\351\227\250\345\215\241\347\211\207.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\346\200\273\347\273\217\345\212\236\345\215\241\347\211\207.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\346\227\251\344\270\212.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\346\231\256\351\200\232\344\274\232\345\221\230.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\346\234\210\344\272\256.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\346\243\200\346\237\245\346\233\264\346\226\260 (1).png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\346\263\250\351\224\200.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\347\231\275\351\207\221\344\274\232\345\221\230.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\347\233\221\347\256\241\345\260\217\347\273\204\345\215\241\347\211\207.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\347\263\273\347\273\237\347\256\241\347\220\206\345\221\230.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\347\273\217\347\220\206\351\203\250\345\215\241\347\211\207.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\347\273\264\344\277\256\346\210\277(hover)icon.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\347\273\264\344\277\256\346\210\277icon.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\347\273\264\344\277\256\351\203\250\345\215\241\347\211\207.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\350\204\217\346\210\277(hover)icon.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\350\204\217\346\210\277icon1.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\350\264\242\345\212\241\351\203\250\345\215\241\347\211\207.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\351\205\222\345\272\227\351\203\250\345\215\241\347\211\207.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\351\222\273\347\237\263\344\274\232\345\221\230.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\351\224\201\345\261\217.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\351\242\204\347\272\246\346\210\277(hover)icon.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\351\242\204\347\272\246\346\210\277icon.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\351\244\220\351\245\256\351\203\250\345\215\241\347\211\207.png" delete mode 100644 "EOM.TSHotelManagement.FormUI/Resources/\351\273\204\351\207\221\344\274\232\345\221\230.png" delete mode 100644 EOM.TSHotelManagement.FormUI/images/blue_refresh.png diff --git a/EOM.TSHotelManagement.Common/BackendApi/ApiConstants.cs b/EOM.TSHotelManagement.Common/BackendApi/ApiConstants.cs index e467d1d..8114313 100644 --- a/EOM.TSHotelManagement.Common/BackendApi/ApiConstants.cs +++ b/EOM.TSHotelManagement.Common/BackendApi/ApiConstants.cs @@ -11,7 +11,6 @@ public const string Base_SelectCustoTypeAllCanUse = "Base/SelectCustoTypeAllCanUse"; public const string Base_SelectPassPortTypeAllCanUse = "Base/SelectPassPortTypeAllCanUse"; public const string Base_SelectRoomStateAll = "Base/SelectRoomStateAll"; - public const string Base_SelectReserTypeAll = "Base/SelectReserTypeAll"; // Employee URLs public const string Employee_SelectEmployeeInfoByEmployeeId = "Employee/SelectEmployeeInfoByEmployeeId"; @@ -33,7 +32,6 @@ public const string Room_SelectRoomAll = "Room/SelectRoomAll"; public const string Room_SelectRoomByRoomNo = "Room/SelectRoomByRoomNo"; public const string Room_DayByRoomNo = "Room/DayByRoomNo"; - public const string Room_CheckoutRoomByRoomNo = "Room/CheckoutRoomByRoomNo"; public const string Room_SelectCanUseRoomAll = "Room/SelectCanUseRoomAll"; public const string Room_UpdateRoomInfo = "Room​/UpdateRoomInfo"; public const string Room_UpdateRoomInfoWithReser = "Room​/UpdateRoomInfoWithReser"; @@ -54,6 +52,7 @@ public const string Reser_DeleteReserInfo = "Reser/DeleteReserInfo"; public const string Reser_InsertReserInfo = "Reser​/InserReserInfo"; public const string Reser_SelectReserInfoByRoomNo = "Reser/SelectReserInfoByRoomNo"; + public const string Reser_SelectReserTypeAll = "Reser/SelectReserTypeAll"; // Room Type URLs public const string RoomType_SelectRoomTypeByRoomNo = "RoomType/SelectRoomTypeByRoomNo"; @@ -72,17 +71,10 @@ // Spend URLs public const string Spend_SelectSpendByRoomNo = "Spend/SelectSpendByRoomNo"; public const string Spend_SumConsumptionAmount = "Spend/SumConsumptionAmount"; - public const string Spend_UpdateMoneyState = "Spend/UpdateMoneyState"; - public const string Spend_UpdateSpendInfoByRoomNo = "Spend​/UpdateSpendInfoByRoomNo"; public const string Spend_AddCustomerSpend = "Spend​/AddCustomerSpend"; public const string Spend_SeletHistorySpendInfoAll = "Spend/SeletHistorySpendInfoAll"; - public const string Spend_UpdSpendInfo = "Spend/UpdSpendInfo"; public const string Spend_UndoCustomerSpend = "Spend/UndoCustomerSpend"; - // EnergyManagement URLs - public const string EnergyManagement_SelectEnergyManagementInfo = "EnergyManagement/SelectEnergyManagementInfo"; - public const string EnergyManagement_InsertEnergyManagementInfo = "EnergyManagement/InsertEnergyManagementInfo"; - // PromotionContent public const string PromotionContent_SelectPromotionContents = "PromotionContent/SelectPromotionContents"; @@ -94,7 +86,7 @@ // SellThing public const string Sellthing_SelectSellThingAll = "Sellthing/SelectSellThingAll"; - public const string Sellthing_UpdateSellthingInfo = "Sellthing/UpdateSellthingInfo"; + public const string Sellthing_UpdateSellthingInfo = "Sellthing/UpdateSellthing"; public const string Sellthing_SelectSellThingByNameAndPrice = "Sellthing/SelectSellThingByNameAndPrice"; // Utility diff --git a/EOM.TSHotelManagement.Common/UIControlConstant.cs b/EOM.TSHotelManagement.Common/UIControlConstant.cs index 68af2c0..5ba682d 100644 --- a/EOM.TSHotelManagement.Common/UIControlConstant.cs +++ b/EOM.TSHotelManagement.Common/UIControlConstant.cs @@ -1,10 +1,4 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace EOM.TSHotelManagement.Common +namespace EOM.TSHotelManagement.Common { public class UIControlConstant { diff --git a/EOM.TSHotelManagement.Common/UIControlIconConstant.cs b/EOM.TSHotelManagement.Common/UIControlIconConstant.cs index bcee3b8..db5c241 100644 --- a/EOM.TSHotelManagement.Common/UIControlIconConstant.cs +++ b/EOM.TSHotelManagement.Common/UIControlIconConstant.cs @@ -1,10 +1,4 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace EOM.TSHotelManagement.Common +namespace EOM.TSHotelManagement.Common { public class UIControlIconConstant { diff --git a/EOM.TSHotelManagement.Common/UIMessageConstant.cs b/EOM.TSHotelManagement.Common/UIMessageConstant.cs index 9015ee6..2e8483a 100644 --- a/EOM.TSHotelManagement.Common/UIMessageConstant.cs +++ b/EOM.TSHotelManagement.Common/UIMessageConstant.cs @@ -1,11 +1,4 @@ -using EOM.TSHotelManagement.Common.Util; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - -namespace EOM.TSHotelManagement.Common +namespace EOM.TSHotelManagement.Common { public class UIMessageConstant { diff --git a/EOM.TSHotelManagement.Common/Util/RecordHelper.cs b/EOM.TSHotelManagement.Common/Util/RecordHelper.cs index 783f5f5..fbbb88c 100644 --- a/EOM.TSHotelManagement.Common/Util/RecordHelper.cs +++ b/EOM.TSHotelManagement.Common/Util/RecordHelper.cs @@ -1,5 +1,6 @@ using EOM.TSHotelManagement.Common.Contract; using EOM.TSHotelManagement.Common.Core; +using jvncorelib.CodeLib; using jvncorelib.EntityLib; namespace EOM.TSHotelManagement.Common @@ -19,6 +20,7 @@ namespace EOM.TSHotelManagement.Common string api = ApiConstants.Utility_AddLog; var logDetail = new CreateOperationLogInputDto { + OperationId = new UniqueCode().GetNewId("OP-"), OperationTime = Convert.ToDateTime(DateTime.Now), LogContent = operationLog, OperationAccount = LoginInfo.WorkerNo, diff --git a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.Designer.cs index 010ba0b..22ef3f4 100644 --- a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.Designer.cs @@ -36,7 +36,7 @@ btnRoom.AutoEllipsis = true; btnRoom.BackColor = Color.Transparent; btnRoom.BackgroundImage = Properties.Resources.可住状态; - btnRoom.Font = new Font("Microsoft YaHei UI", 9F, FontStyle.Regular, GraphicsUnit.Point, 134); + btnRoom.Font = new Font("Noto Sans SC", 9F); btnRoom.Ghost = true; btnRoom.IconRatio = 0.5F; btnRoom.JoinLeft = true; diff --git a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.cs b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.cs index b1c4ab8..f5c2116 100644 --- a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.cs +++ b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoom.cs @@ -1,12 +1,10 @@ using AntdUI; -using AntdUI.Svg; using EOM.TSHotelManagement.Common; using EOM.TSHotelManagement.Common.Contract; using EOM.TSHotelManagement.Common.Util; using EOM.TSHotelManagement.FormUI.Properties; using EOM.TSHotelManagement.Shared; using jvncorelib.EntityLib; -using System.ComponentModel; using System.Drawing.Drawing2D; using System.Runtime.InteropServices; @@ -65,14 +63,8 @@ namespace EOM.TSHotelManagement.FormUI public ReadCustomerOutputDto romCustoInfo { get; set; } #endregion - public string lblMark { get; set; } - private void btnRoom_Click(object sender, EventArgs e) { - if (lblMark == "Mark") - { - return; - } LoadRoomInfo(); FrmRoomManager.ReadInfo(); } diff --git a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoomType.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoomType.Designer.cs index 2028a1a..568b526 100644 --- a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoomType.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoomType.Designer.cs @@ -1,4 +1,4 @@ -namespace EOM.TSHotelManagement.FormUI.AppUserControls +namespace EOM.TSHotelManagement.FormUI { partial class ucRoomType { diff --git a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoomType.cs b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoomType.cs index 45d8a40..7506853 100644 --- a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoomType.cs +++ b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucRoomType.cs @@ -1,4 +1,4 @@ -namespace EOM.TSHotelManagement.FormUI.AppUserControls +namespace EOM.TSHotelManagement.FormUI { public partial class ucRoomType : UserControl { diff --git a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucWindowHeader.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucWindowHeader.Designer.cs index 5a950e7..4a64090 100644 --- a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucWindowHeader.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucWindowHeader.Designer.cs @@ -30,7 +30,6 @@ { System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ucWindowHeader)); phCustoHeader = new AntdUI.PageHeader(); - btnMinimize = new AntdUI.Button(); btnClose = new AntdUI.Button(); tlpContainer = new TableLayoutPanel(); phCustoHeader.SuspendLayout(); @@ -40,7 +39,6 @@ // phCustoHeader.BackColor = Color.FromArgb(22, 119, 255); phCustoHeader.CloseSize = 40; - phCustoHeader.Controls.Add(btnMinimize); phCustoHeader.Controls.Add(btnClose); phCustoHeader.DividerColor = Color.White; phCustoHeader.DividerShow = true; @@ -58,24 +56,12 @@ phCustoHeader.Text = "自定义文字"; phCustoHeader.UseSystemStyleColor = true; // - // btnMinimize - // - btnMinimize.Anchor = AnchorStyles.Right; - btnMinimize.BackColor = Color.FromArgb(22, 119, 255); - btnMinimize.DisplayStyle = AntdUI.TButtonDisplayStyle.Text; - btnMinimize.Location = new Point(333, 3); - btnMinimize.Name = "btnMinimize"; - btnMinimize.Size = new Size(23, 25); - btnMinimize.TabIndex = 141; - btnMinimize.Text = "—"; - btnMinimize.Type = AntdUI.TTypeMini.Info; - btnMinimize.Click += btnMinimize_Click; - // // btnClose // btnClose.Anchor = AnchorStyles.Top | AnchorStyles.Right; btnClose.BackColor = Color.FromArgb(22, 119, 255); btnClose.DisplayStyle = AntdUI.TButtonDisplayStyle.Text; + btnClose.Font = new Font("Noto Sans SC", 13F); btnClose.Location = new Point(362, 4); btnClose.Name = "btnClose"; btnClose.Size = new Size(23, 25); @@ -115,7 +101,6 @@ #endregion public AntdUI.PageHeader phCustoHeader; - private AntdUI.Button btnMinimize; private AntdUI.Button btnClose; private TableLayoutPanel tlpContainer; } diff --git a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucWindowHeader.cs b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucWindowHeader.cs index 03eea16..a36d5de 100644 --- a/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucWindowHeader.cs +++ b/EOM.TSHotelManagement.FormUI/ClientCustomControls/ucWindowHeader.cs @@ -1,13 +1,4 @@ -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Data; -using System.Drawing; -using System.Drawing.Drawing2D; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System.Windows.Forms; +using System.Drawing.Drawing2D; namespace EOM.TSHotelManagement.FormUI { @@ -29,7 +20,7 @@ namespace EOM.TSHotelManagement.FormUI } - #region 房态图圆角代码 + #region 圆角代码 public GraphicsPath GetRoundRectPath(RectangleF rect, float radius) { return GetRoundRectPath(rect.X, rect.Y, rect.Width, rect.Height, radius); @@ -93,7 +84,6 @@ namespace EOM.TSHotelManagement.FormUI phCustoHeader.ShowIcon = showIcon; phCustoHeader.Icon = icon; btnClose.Visible = showClose; - btnMinimize.Visible = showMinimize; phCustoHeader.Refresh(); this.Refresh(); } @@ -105,7 +95,6 @@ namespace EOM.TSHotelManagement.FormUI phCustoHeader.ShowIcon = true; phCustoHeader.Icon = icon; btnClose.Visible = true; - btnMinimize.Visible = true; phCustoHeader.Refresh(); this.Refresh(); } @@ -117,7 +106,6 @@ namespace EOM.TSHotelManagement.FormUI phCustoHeader.ShowIcon = false; phCustoHeader.Icon = null; btnClose.Visible = true; - btnMinimize.Visible = false; phCustoHeader.Refresh(); this.Refresh(); } @@ -130,7 +118,6 @@ namespace EOM.TSHotelManagement.FormUI phCustoHeader.ShowIcon = showIcon; phCustoHeader.Icon = icon; btnClose.Visible = showClose; - btnMinimize.Visible = false; phCustoHeader.Refresh(); this.Refresh(); } @@ -150,15 +137,6 @@ namespace EOM.TSHotelManagement.FormUI } } - private void btnMinimize_Click(object sender, EventArgs e) - { - var parentForm = this.FindForm(); - if (parentForm != null) - { - parentForm.WindowState = FormWindowState.Minimized; - } - } - private void ucWindowHeader_Load(object sender, EventArgs e) { this.Region = new Region(GetRoundRectPath(new RectangleF(0, 0, this.Width, this.Height), 6f)); diff --git a/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.Designer.cs index 84d75fa..5106074 100644 --- a/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.Designer.cs @@ -41,6 +41,7 @@ // // lblTips // + lblTips.Font = new Font("Noto Sans SC", 9F); lblTips.Location = new Point(12, 48); lblTips.Name = "lblTips"; lblTips.Size = new Size(311, 23); @@ -51,6 +52,7 @@ // lbInternetSoftwareVersion // lbInternetSoftwareVersion.BackColor = Color.Transparent; + lbInternetSoftwareVersion.Font = new Font("Noto Sans SC", 9F); lbInternetSoftwareVersion.Location = new Point(152, 106); lbInternetSoftwareVersion.Name = "lbInternetSoftwareVersion"; lbInternetSoftwareVersion.Size = new Size(140, 23); @@ -61,6 +63,7 @@ // lblLocalSoftwareVersion // lblLocalSoftwareVersion.BackColor = Color.Transparent; + lblLocalSoftwareVersion.Font = new Font("Noto Sans SC", 9F); lblLocalSoftwareVersion.Location = new Point(152, 77); lblLocalSoftwareVersion.Name = "lblLocalSoftwareVersion"; lblLocalSoftwareVersion.Size = new Size(140, 23); @@ -71,6 +74,7 @@ // label2 // label2.BackColor = Color.Transparent; + label2.Font = new Font("Noto Sans SC", 9F); label2.Location = new Point(43, 106); label2.Name = "label2"; label2.Size = new Size(103, 23); @@ -81,6 +85,7 @@ // label1 // label1.BackColor = Color.Transparent; + label1.Font = new Font("Noto Sans SC", 9F); label1.Location = new Point(43, 77); label1.Name = "label1"; label1.Size = new Size(103, 23); @@ -91,6 +96,7 @@ // label3 // label3.BackColor = Color.Transparent; + label3.Font = new Font("Noto Sans SC", 9F); label3.Location = new Point(43, 135); label3.Name = "label3"; label3.Size = new Size(103, 23); @@ -119,6 +125,7 @@ Controls.Add(label2); Controls.Add(label1); Controls.Add(lblTips); + Font = new Font("Noto Sans SC", 9F); FormBorderStyle = FormBorderStyle.FixedSingle; Icon = (Icon)resources.GetObject("$this.Icon"); MaximizeBox = false; diff --git a/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.cs b/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.cs index cc3cc5b..933a4dc 100644 --- a/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.cs +++ b/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.cs @@ -102,7 +102,8 @@ namespace EOM.TSHotelManagement.FormUI if (version.Equals(lblLocalSoftwareVersion.Text.Trim())) { LoginInfo.SoftwareReleaseLog = $"{releaseBody}"; - NotificationService.ShowSuccess("当前已是最新版本,无需更新!"); + NotificationService.ShowSuccess("当前已是最新版本,无需更新!3秒后将自动跳转登录页面"); + Task.Delay(3000).Wait(); Task.Run(() => threadPro()); return; } diff --git a/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLogin.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLogin.Designer.cs index bcd09eb..8b3cb0c 100644 --- a/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLogin.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLogin.Designer.cs @@ -33,11 +33,11 @@ txtAccount = new AntdUI.Input(); txtWorkerPwd = new AntdUI.Input(); picLogin = new AntdUI.Button(); - picFormSize = new AntdUI.Button(); - picClose = new AntdUI.Button(); avatar1 = new AntdUI.Avatar(); avatar2 = new AntdUI.Avatar(); label1 = new AntdUI.Label(); + btnMinimize = new AntdUI.Button(); + btnClose = new AntdUI.Button(); SuspendLayout(); // // label2 @@ -55,7 +55,7 @@ // txtAccount // txtAccount.BackColor = Color.White; - txtAccount.Font = new Font("Microsoft YaHei UI", 14F); + txtAccount.Font = new Font("Noto Sans SC", 12F); txtAccount.Location = new Point(648, 190); txtAccount.Name = "txtAccount"; txtAccount.PlaceholderText = ""; @@ -66,7 +66,7 @@ // txtWorkerPwd // txtWorkerPwd.BackColor = Color.White; - txtWorkerPwd.Font = new Font("Microsoft YaHei UI", 14F); + txtWorkerPwd.Font = new Font("Noto Sans SC", 12F); txtWorkerPwd.Location = new Point(648, 264); txtWorkerPwd.Name = "txtWorkerPwd"; txtWorkerPwd.PasswordChar = '*'; @@ -79,7 +79,7 @@ // // picLogin // - picLogin.Font = new Font("Microsoft YaHei UI", 12F); + picLogin.Font = new Font("Noto Sans SC", 12F); picLogin.Location = new Point(658, 342); picLogin.Name = "picLogin"; picLogin.Radius = 8; @@ -90,30 +90,6 @@ picLogin.Type = AntdUI.TTypeMini.Primary; picLogin.Click += picLogin_Click; // - // picFormSize - // - picFormSize.BackColor = Color.Transparent; - picFormSize.BackgroundImage = Properties.Resources.arrow_down_b; - picFormSize.Font = new Font("Microsoft YaHei UI", 9F); - picFormSize.Ghost = true; - picFormSize.Location = new Point(822, 1); - picFormSize.Name = "picFormSize"; - picFormSize.Size = new Size(41, 38); - picFormSize.TabIndex = 36; - picFormSize.Click += picMin_Click; - // - // picClose - // - picClose.BackColor = Color.Transparent; - picClose.BackgroundImage = Properties.Resources.close; - picClose.Font = new Font("Microsoft YaHei UI", 9F); - picClose.Ghost = true; - picClose.Location = new Point(875, 1); - picClose.Name = "picClose"; - picClose.Size = new Size(41, 38); - picClose.TabIndex = 37; - picClose.Click += picClose_Click; - // // avatar1 // avatar1.Image = (Image)resources.GetObject("avatar1.Image"); @@ -136,7 +112,7 @@ // // label1 // - label1.Font = new Font("Microsoft YaHei UI", 14F); + label1.Font = new Font("Noto Sans SC", 14F); label1.Location = new Point(648, 72); label1.Name = "label1"; label1.Size = new Size(222, 83); @@ -144,6 +120,36 @@ label1.Text = "欢迎登录"; label1.TextAlign = ContentAlignment.MiddleCenter; // + // btnMinimize + // + btnMinimize.Anchor = AnchorStyles.Right; + btnMinimize.BackColor = Color.FromArgb(22, 119, 255); + btnMinimize.DisplayStyle = AntdUI.TButtonDisplayStyle.Text; + btnMinimize.Font = new Font("Noto Sans SC", 10.5F, FontStyle.Regular, GraphicsUnit.Point, 0); + btnMinimize.Location = new Point(832, 2); + btnMinimize.Name = "btnMinimize"; + btnMinimize.Size = new Size(38, 38); + btnMinimize.TabIndex = 143; + btnMinimize.Text = "—"; + btnMinimize.TextAlign = ContentAlignment.BottomCenter; + btnMinimize.Type = AntdUI.TTypeMini.Info; + btnMinimize.Click += picMin_Click; + // + // btnClose + // + btnClose.Anchor = AnchorStyles.Top | AnchorStyles.Right; + btnClose.BackColor = Color.FromArgb(22, 119, 255); + btnClose.DisplayStyle = AntdUI.TButtonDisplayStyle.Text; + btnClose.Font = new Font("Noto Sans SC", 10.5F, FontStyle.Regular, GraphicsUnit.Point, 0); + btnClose.Location = new Point(876, 2); + btnClose.Name = "btnClose"; + btnClose.Size = new Size(38, 38); + btnClose.TabIndex = 142; + btnClose.Text = "×"; + btnClose.TextAlign = ContentAlignment.BottomCenter; + btnClose.Type = AntdUI.TTypeMini.Info; + btnClose.Click += picClose_Click; + // // FrmLogin // AutoScaleDimensions = new SizeF(7F, 17F); @@ -152,11 +158,11 @@ BackgroundImage = (Image)resources.GetObject("$this.BackgroundImage"); BackgroundImageLayout = ImageLayout.Zoom; ClientSize = new Size(916, 510); + Controls.Add(btnMinimize); + Controls.Add(btnClose); Controls.Add(label1); Controls.Add(avatar2); Controls.Add(avatar1); - Controls.Add(picClose); - Controls.Add(picFormSize); Controls.Add(picLogin); Controls.Add(txtWorkerPwd); Controls.Add(txtAccount); @@ -179,11 +185,11 @@ private AntdUI.Input txtAccount; private AntdUI.Input txtWorkerPwd; private AntdUI.Button picLogin; - private AntdUI.Button picFormSize; - private AntdUI.Button picClose; private AntdUI.Avatar avatar1; private AntdUI.Avatar avatar2; private AntdUI.Label label1; + private AntdUI.Button btnMinimize; + private AntdUI.Button btnClose; } } diff --git a/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.Designer.cs index 0fee07c..d8e1450 100644 --- a/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.Designer.cs @@ -43,12 +43,12 @@ label2 = new Label(); picLogo = new PictureBox(); muNavBar = new AntdUI.Menu(); - btnClose = new AntdUI.Button(); - btnFormSize = new AntdUI.Button(); btnSetting = new AntdUI.Button(); cpUITheme = new AntdUI.ColorPicker(); lblScroll = new AntdUI.Label(); ltNow = new AntdUI.LabelTime(); + btnMinimize = new AntdUI.Button(); + btnClose = new AntdUI.Button(); pnlCheckInfo.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)picLogo).BeginInit(); SuspendLayout(); @@ -204,37 +204,13 @@ muNavBar.Text = "menu1"; muNavBar.SelectChanged += muNavBar_SelectChanged; // - // btnClose - // - btnClose.BackColor = Color.Transparent; - btnClose.BackgroundImage = Properties.Resources.close; - btnClose.Font = new Font("Microsoft YaHei UI", 9F); - btnClose.Ghost = true; - btnClose.Location = new Point(1032, 5); - btnClose.Name = "btnClose"; - btnClose.Size = new Size(41, 38); - btnClose.TabIndex = 41; - btnClose.Click += picClose_Click; - // - // btnFormSize - // - btnFormSize.BackColor = Color.Transparent; - btnFormSize.BackgroundImage = Properties.Resources.arrow_down_b; - btnFormSize.Font = new Font("Microsoft YaHei UI", 9F); - btnFormSize.Ghost = true; - btnFormSize.Location = new Point(982, 5); - btnFormSize.Name = "btnFormSize"; - btnFormSize.Size = new Size(41, 38); - btnFormSize.TabIndex = 40; - btnFormSize.Click += picFormSize_Click; - // // btnSetting // btnSetting.BackColor = Color.Transparent; btnSetting.BackgroundImage = Properties.Resources.settings2; - btnSetting.Font = new Font("Microsoft YaHei UI", 9F); + btnSetting.Font = new Font("Noto Sans SC", 9F, FontStyle.Regular, GraphicsUnit.Point, 0); btnSetting.Ghost = true; - btnSetting.Location = new Point(932, 5); + btnSetting.Location = new Point(946, 4); btnSetting.Name = "btnSetting"; btnSetting.Size = new Size(41, 38); btnSetting.TabIndex = 42; @@ -242,7 +218,7 @@ // // cpUITheme // - cpUITheme.Location = new Point(882, 5); + cpUITheme.Location = new Point(899, 4); cpUITheme.Name = "cpUITheme"; cpUITheme.Size = new Size(41, 38); cpUITheme.TabIndex = 43; @@ -269,6 +245,36 @@ ltNow.Size = new Size(127, 35); ltNow.TabIndex = 45; // + // btnMinimize + // + btnMinimize.Anchor = AnchorStyles.Right; + btnMinimize.BackColor = Color.FromArgb(22, 119, 255); + btnMinimize.DisplayStyle = AntdUI.TButtonDisplayStyle.Text; + btnMinimize.Font = new Font("Noto Sans SC", 10.5F, FontStyle.Regular, GraphicsUnit.Point, 0); + btnMinimize.Location = new Point(993, 4); + btnMinimize.Name = "btnMinimize"; + btnMinimize.Size = new Size(38, 38); + btnMinimize.TabIndex = 145; + btnMinimize.Text = "—"; + btnMinimize.TextAlign = ContentAlignment.BottomCenter; + btnMinimize.Type = AntdUI.TTypeMini.Info; + btnMinimize.Click += picFormSize_Click; + // + // btnClose + // + btnClose.Anchor = AnchorStyles.Top | AnchorStyles.Right; + btnClose.BackColor = Color.FromArgb(22, 119, 255); + btnClose.DisplayStyle = AntdUI.TButtonDisplayStyle.Text; + btnClose.Font = new Font("Noto Sans SC", 10.5F, FontStyle.Regular, GraphicsUnit.Point, 0); + btnClose.Location = new Point(1037, 4); + btnClose.Name = "btnClose"; + btnClose.Size = new Size(38, 38); + btnClose.TabIndex = 144; + btnClose.Text = "×"; + btnClose.TextAlign = ContentAlignment.BottomCenter; + btnClose.Type = AntdUI.TTypeMini.Info; + btnClose.Click += picClose_Click; + // // FrmMain // AutoScaleDimensions = new SizeF(7F, 17F); @@ -277,12 +283,12 @@ BackColor = Color.FromArgb(235, 243, 255); CausesValidation = false; ClientSize = new Size(1080, 721); + Controls.Add(btnMinimize); + Controls.Add(btnClose); Controls.Add(ltNow); Controls.Add(lblScroll); Controls.Add(cpUITheme); Controls.Add(btnSetting); - Controls.Add(btnClose); - Controls.Add(btnFormSize); Controls.Add(muNavBar); Controls.Add(lbHello); Controls.Add(pnlCheckInfo); @@ -322,12 +328,12 @@ private System.Windows.Forms.Timer tmrFont; private System.Windows.Forms.Label lbHello; private AntdUI.Menu muNavBar; - private AntdUI.Button btnClose; - private AntdUI.Button btnFormSize; private AntdUI.Button btnSetting; private AntdUI.ColorPicker cpUITheme; private AntdUI.Label lblCheckDay; private AntdUI.Label lblScroll; private AntdUI.LabelTime ltNow; + private AntdUI.Button btnMinimize; + private AntdUI.Button btnClose; } } \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.cs b/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.cs index dd44e0b..2af2014 100644 --- a/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.cs +++ b/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.cs @@ -23,16 +23,13 @@ */ using AntdUI; -using AntdUI.Svg; using EOM.TSHotelManagement.Common; using EOM.TSHotelManagement.Common.Contract; using EOM.TSHotelManagement.Common.Util; using EOM.TSHotelManagement.FormUI.Properties; -using EOM.TSHotelManagement.Shared; using jvncorelib.CodeLib; using jvncorelib.EntityLib; using System.Diagnostics; -using System.Windows.Forms; namespace EOM.TSHotelManagement.FormUI { @@ -235,7 +232,7 @@ namespace EOM.TSHotelManagement.FormUI { this.Owner.Hide(); - lblSoftName.Text = System.Windows.Forms.Application.ProductName.ToString() + " V" + ApplicationUtil.GetApplicationVersion(); + lblSoftName.Text = ApplicationUtil.GetApplicationName() + " V" + ApplicationUtil.GetApplicationVersion(); LoadNavBar(); @@ -260,7 +257,7 @@ namespace EOM.TSHotelManagement.FormUI pnlCheckInfo.Visible = false; - niClientIcon.Text = "TS酒店管理系统 - " + LoginInfo.WorkerName + " - 版本号:" + ApplicationUtil.GetApplicationVersion(); + niClientIcon.Text = "TS酒店管理系统 - " + LoginInfo.WorkerName + " - 版本号:V" + ApplicationUtil.GetApplicationVersion(); wk_WorkerName = LoginInfo.WorkerName; FrmRoomManager frmRoomManager = new FrmRoomManager @@ -299,7 +296,6 @@ namespace EOM.TSHotelManagement.FormUI linkLabel1.LinkColor = shouldHaveChecked ? Color.Green : Color.Red; lblCheckDay.Text = Convert.ToString(response.Data.CheckDay); - pnlCheckInfo.Visible = true; } #endregion @@ -437,13 +433,12 @@ namespace EOM.TSHotelManagement.FormUI return; } - NotificationService.ShowSuccess($"{shiftName}打卡成功!你已共打卡" + lblCheckDay.Text + "天"); linkLabel1.Text = $"{shiftName}已打卡"; linkLabel1.ForeColor = Color.Green; linkLabel1.LinkColor = Color.Green; } } - + NotificationService.ShowSuccess($"{shiftName}打卡成功!你已共打卡" + response.Data.CheckDay + "天"); lblCheckDay.Text = Convert.ToString(response.Data.CheckDay); pnlCheckInfo.Visible = true; lblCheckDay.Refresh(); diff --git a/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.resx b/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.resx index 1b7491f..e61ef68 100644 --- a/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.resx +++ b/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.resx @@ -117,6 +117,12 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + True + + + True + 114, 16 @@ -145,9 +151,21 @@ AAD//wAA//8AAA== + + True + 19, 16 + + True + + + True + + + True + iVBORw0KGgoAAAANSUhEUgAAAPoAAACtCAYAAACZZ2JyAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH @@ -575,6 +593,27 @@ pvrhFwgTJkz1wy8QJkyY6odfIEyYMNUPv0CYMGGqH/8Hl1vdIDodNEkAAAAASUVORK5CYII= + + True + + + True + + + True + + + True + + + True + + + True + + + True + 43 diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAbout.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAbout.Designer.cs index 8021d11..14611b9 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAbout.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAbout.Designer.cs @@ -71,7 +71,7 @@ // lblServerVersion // lblServerVersion.BackColor = Color.Transparent; - lblServerVersion.Font = new Font("Noto Sans SC", 9F); + lblServerVersion.Font = new Font("Noto Sans SC", 10.5F); lblServerVersion.Location = new Point(194, 287); lblServerVersion.Name = "lblServerVersion"; lblServerVersion.Size = new Size(183, 23); @@ -81,7 +81,7 @@ // lblClientVersion // lblClientVersion.BackColor = Color.Transparent; - lblClientVersion.Font = new Font("Noto Sans SC", 9F); + lblClientVersion.Font = new Font("Noto Sans SC", 10.5F); lblClientVersion.Location = new Point(194, 258); lblClientVersion.Name = "lblClientVersion"; lblClientVersion.Size = new Size(183, 23); @@ -91,7 +91,7 @@ // lblServerVersionDescriotion // lblServerVersionDescriotion.BackColor = Color.Transparent; - lblServerVersionDescriotion.Font = new Font("Noto Sans SC", 9F); + lblServerVersionDescriotion.Font = new Font("Noto Sans SC", 10.5F); lblServerVersionDescriotion.Location = new Point(13, 287); lblServerVersionDescriotion.Name = "lblServerVersionDescriotion"; lblServerVersionDescriotion.Size = new Size(171, 23); @@ -102,7 +102,7 @@ // lblClientVersionDescriotion // lblClientVersionDescriotion.BackColor = Color.Transparent; - lblClientVersionDescriotion.Font = new Font("Noto Sans SC", 9F); + lblClientVersionDescriotion.Font = new Font("Noto Sans SC", 10.5F); lblClientVersionDescriotion.Location = new Point(13, 258); lblClientVersionDescriotion.Name = "lblClientVersionDescriotion"; lblClientVersionDescriotion.Size = new Size(171, 23); @@ -113,7 +113,7 @@ // lblCopyright // lblCopyright.BackColor = Color.Transparent; - lblCopyright.Font = new Font("Noto Sans SC", 9F); + lblCopyright.Font = new Font("Noto Sans SC", 10.5F); lblCopyright.Location = new Point(13, 346); lblCopyright.Name = "lblCopyright"; lblCopyright.Size = new Size(364, 23); @@ -124,7 +124,7 @@ // lblNotice // lblNotice.BackColor = Color.Transparent; - lblNotice.Font = new Font("Noto Sans SC", 9F); + lblNotice.Font = new Font("Noto Sans SC", 10.5F); lblNotice.Location = new Point(13, 375); lblNotice.Name = "lblNotice"; lblNotice.Size = new Size(364, 23); @@ -135,7 +135,7 @@ // lblFrameworkVersion // lblFrameworkVersion.BackColor = Color.Transparent; - lblFrameworkVersion.Font = new Font("Noto Sans SC", 9F); + lblFrameworkVersion.Font = new Font("Noto Sans SC", 10.5F); lblFrameworkVersion.Location = new Point(194, 316); lblFrameworkVersion.Name = "lblFrameworkVersion"; lblFrameworkVersion.Size = new Size(183, 23); @@ -145,7 +145,7 @@ // lblFrameworkVersionDescription // lblFrameworkVersionDescription.BackColor = Color.Transparent; - lblFrameworkVersionDescription.Font = new Font("Noto Sans SC", 9F); + lblFrameworkVersionDescription.Font = new Font("Noto Sans SC", 10.5F); lblFrameworkVersionDescription.Location = new Point(13, 316); lblFrameworkVersionDescription.Name = "lblFrameworkVersionDescription"; lblFrameworkVersionDescription.Size = new Size(171, 23); diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.Designer.cs index 007824e..3b88876 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.Designer.cs @@ -52,7 +52,7 @@ // txtOldPassword // txtOldPassword.BackColor = Color.White; - txtOldPassword.Font = new Font("Microsoft YaHei UI", 14F); + txtOldPassword.Font = new Font("Noto Sans SC", 14F); txtOldPassword.Location = new Point(59, 132); txtOldPassword.Name = "txtOldPassword"; txtOldPassword.PasswordChar = '*'; @@ -64,6 +64,7 @@ // // lblEmployeeId // + lblEmployeeId.Font = new Font("Noto Sans SC", 14F); lblEmployeeId.Location = new Point(59, 62); lblEmployeeId.Name = "lblEmployeeId"; lblEmployeeId.Size = new Size(238, 43); @@ -93,7 +94,7 @@ // // btnUpdatePassword // - btnUpdatePassword.Font = new Font("Microsoft YaHei UI", 12F); + btnUpdatePassword.Font = new Font("Noto Sans SC", 12F); btnUpdatePassword.Location = new Point(76, 289); btnUpdatePassword.Name = "btnUpdatePassword"; btnUpdatePassword.Size = new Size(161, 51); @@ -105,7 +106,7 @@ // txtNewPassword // txtNewPassword.BackColor = Color.White; - txtNewPassword.Font = new Font("Microsoft YaHei UI", 14F); + txtNewPassword.Font = new Font("Noto Sans SC", 14F); txtNewPassword.Location = new Point(59, 211); txtNewPassword.Name = "txtNewPassword"; txtNewPassword.PasswordChar = '*'; diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.cs index ed1e0a5..f926c36 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.cs @@ -3,15 +3,6 @@ using EOM.TSHotelManagement.Common; using EOM.TSHotelManagement.Common.Contract; using EOM.TSHotelManagement.Common.Util; using jvncorelib.EntityLib; -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Data; -using System.Drawing; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System.Windows.Forms; namespace EOM.TSHotelManagement.FormUI { diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.Designer.cs index 6662b63..5dcff2e 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.Designer.cs @@ -38,6 +38,7 @@ // // label4 // + label4.Font = new Font("Noto Sans SC", 10.5F, FontStyle.Regular, GraphicsUnit.Point, 0); label4.Location = new Point(293, 347); label4.Name = "label4"; label4.Size = new Size(215, 23); diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.cs index bed532f..a118bed 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.cs @@ -1,17 +1,8 @@ using AntdUI; using EOM.TSHotelManagement.Common; using EOM.TSHotelManagement.Common.Contract; -using EOM.TSHotelManagement.FormUI.Properties; using jvncorelib.EntityLib; -using System; -using System.Collections.Generic; using System.ComponentModel; -using System.Data; -using System.Drawing; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System.Windows.Forms; namespace EOM.TSHotelManagement.FormUI { diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.Designer.cs index d704775..afb7efb 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.Designer.cs @@ -47,28 +47,29 @@ // label24 // label24.AutoSize = true; - label24.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label24.Location = new Point(12, 53); + label24.Font = new Font("Noto Sans SC", 14F); + label24.Location = new Point(5, 58); label24.Name = "label24"; - label24.Size = new Size(88, 25); + label24.Size = new Size(85, 19); label24.TabIndex = 159; label24.Text = "新房间:"; // // label1 // label1.AutoSize = true; - label1.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label1.Location = new Point(12, 103); + label1.Font = new Font("Noto Sans SC", 14F); + label1.Location = new Point(5, 108); label1.Name = "label1"; - label1.Size = new Size(87, 25); + label1.Size = new Size(81, 19); label1.TabIndex = 161; label1.Text = "类 型:"; // // lblRoomType // - lblRoomType.Location = new Point(91, 97); + lblRoomType.Font = new Font("Noto Sans SC", 12F); + lblRoomType.Location = new Point(91, 99); lblRoomType.Name = "lblRoomType"; - lblRoomType.Size = new Size(149, 40); + lblRoomType.Size = new Size(149, 36); lblRoomType.TabIndex = 162; lblRoomType.Text = ""; lblRoomType.TextAlign = ContentAlignment.MiddleCenter; diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutDetail.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutDetail.Designer.cs index 85caa8c..e7f08cd 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutDetail.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutDetail.Designer.cs @@ -58,7 +58,7 @@ // // dtpCheckTime // - dtpCheckTime.Font = new Font("Microsoft YaHei UI", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); + dtpCheckTime.Font = new Font("Noto Sans SC", 12F); dtpCheckTime.Location = new Point(408, 51); dtpCheckTime.Name = "dtpCheckTime"; dtpCheckTime.PlaceholderText = ""; @@ -78,7 +78,7 @@ // // txtRoomNo // - txtRoomNo.Font = new Font("Microsoft YaHei UI", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); + txtRoomNo.Font = new Font("Noto Sans SC", 12F); txtRoomNo.Location = new Point(408, 102); txtRoomNo.Name = "txtRoomNo"; txtRoomNo.PlaceholderText = ""; @@ -98,7 +98,7 @@ // // CustoName // - CustoName.Font = new Font("Microsoft YaHei UI", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); + CustoName.Font = new Font("Noto Sans SC", 12F); CustoName.Location = new Point(103, 102); CustoName.Name = "CustoName"; CustoName.PlaceholderText = ""; @@ -118,7 +118,7 @@ // // CustoNo // - CustoNo.Font = new Font("Microsoft YaHei UI", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); + CustoNo.Font = new Font("Noto Sans SC", 12F); CustoNo.Location = new Point(103, 51); CustoNo.Name = "CustoNo"; CustoNo.PlaceholderText = ""; @@ -180,6 +180,7 @@ // // btnPg // + btnPg.Font = new Font("Noto Sans SC", 9F, FontStyle.Regular, GraphicsUnit.Point, 0); btnPg.Location = new Point(12, 365); btnPg.Name = "btnPg"; btnPg.PageSize = 15; @@ -202,6 +203,7 @@ // // dgvSpendList // + dgvSpendList.Font = new Font("Noto Sans SC", 9F, FontStyle.Regular, GraphicsUnit.Point, 0); dgvSpendList.Gap = 12; dgvSpendList.Location = new Point(12, 148); dgvSpendList.Name = "dgvSpendList"; diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutDetail.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutDetail.cs index d3f6cfa..74ab54a 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutDetail.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckOutDetail.cs @@ -3,15 +3,7 @@ using EOM.TSHotelManagement.Common; using EOM.TSHotelManagement.Common.Contract; using EOM.TSHotelManagement.Shared; using jvncorelib.EntityLib; -using System; -using System.Collections.Generic; -using System.ComponentModel; using System.Data; -using System.Drawing; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System.Windows.Forms; namespace EOM.TSHotelManagement.FormUI { @@ -28,6 +20,7 @@ namespace EOM.TSHotelManagement.FormUI ResponseMsg result = null; Dictionary dic = null; public static CreateEnergyManagementInputDto w; + public static decimal TotalConsumptionAmount = 0M; private void FrmCheckOutDetail_Load(object sender, EventArgs e) { @@ -128,19 +121,19 @@ namespace EOM.TSHotelManagement.FormUI var customerType = customerTypeResponse.Data; //计算消费总额 - dic = new Dictionary() - { - { nameof(ReadSpendInputDto.RoomNumber), txtRoomNo.Text.Trim() }, - { nameof(ReadSpendInputDto.CustomerNumber), CustoNo.Text.Trim() }, - }; - result = HttpHelper.Request(ApiConstants.Spend_SumConsumptionAmount, dic); - var spendResponse = HttpHelper.JsonToModel>(result.message); - if (spendResponse.Success == false) - { - NotificationService.ShowError($"{ApiConstants.Spend_SumConsumptionAmount}+接口服务异常,请提交Issue或尝试更新版本!"); - return; - } - decimal total = spendResponse.Data.ConsumptionAmount; + //dic = new Dictionary() + //{ + // { nameof(ReadSpendInputDto.RoomNumber), txtRoomNo.Text.Trim() }, + // { nameof(ReadSpendInputDto.CustomerNumber), CustoNo.Text.Trim() }, + //}; + //result = HttpHelper.Request(ApiConstants.Spend_SumConsumptionAmount, dic); + //var spendResponse = HttpHelper.JsonToModel>(result.message); + //if (spendResponse.Success == false) + //{ + // NotificationService.ShowError($"{ApiConstants.Spend_SumConsumptionAmount}+接口服务异常,请提交Issue或尝试更新版本!"); + // return; + //} + decimal total = TotalConsumptionAmount; decimal m = total + sum; decimal discount = (customerType != null && customerType.Discount > 0 && customerType.Discount < 100) ? customerType.Discount / 100M @@ -155,6 +148,8 @@ namespace EOM.TSHotelManagement.FormUI string RoomNo = txtRoomNo.Text; dic = new Dictionary() { + { nameof(ReadSpendInputDto.CustomerNumber) , CustoNo.Text.Trim() }, + { nameof(ReadSpendInputDto.SettlementStatus) , ConsumptionConstant.UnSettle.Code }, { nameof(ReadSpendInputDto.RoomNumber) , RoomNo }, { nameof(ReadAdministratorInputDto.IgnorePaging) , "true" } }; @@ -174,6 +169,8 @@ namespace EOM.TSHotelManagement.FormUI TableComHelper tableComHelper = new TableComHelper(); listTableData = tableComHelper.ConvertToAntdItems(spends); + TotalConsumptionAmount = spends.Count() == 0 ? 0 : spends.DefaultIfEmpty().Sum(a => a!.ConsumptionAmount); + return listTableData; } diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerManagement.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerManagement.Designer.cs index 5c5658b..0782ba1 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerManagement.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCustomerManagement.Designer.cs @@ -52,7 +52,7 @@ // // btnSerach // - btnSerach.Font = new Font("Microsoft YaHei UI", 12F); + btnSerach.Font = new Font("Noto Sans SC", 12F); btnSerach.Location = new Point(602, 441); btnSerach.Name = "btnSerach"; btnSerach.Size = new Size(93, 47); @@ -63,19 +63,21 @@ // // btnAddCusto // - btnAddCusto.Font = new Font("Microsoft YaHei UI", 12F); + btnAddCusto.Font = new Font("Noto Sans SC", 12F); + btnAddCusto.IconPosition = AntdUI.TAlignMini.Top; btnAddCusto.Location = new Point(772, 441); btnAddCusto.Name = "btnAddCusto"; btnAddCusto.Size = new Size(93, 47); btnAddCusto.TabIndex = 128; btnAddCusto.Text = "添加客户"; + btnAddCusto.TextCenterHasIcon = true; btnAddCusto.Type = AntdUI.TTypeMini.Primary; btnAddCusto.Click += btnAddCusto_BtnClick; // // btnUpdCustomer // btnUpdCustomer.Enabled = false; - btnUpdCustomer.Font = new Font("Microsoft YaHei UI", 12F); + btnUpdCustomer.Font = new Font("Noto Sans SC", 12F); btnUpdCustomer.Location = new Point(942, 441); btnUpdCustomer.Name = "btnUpdCustomer"; btnUpdCustomer.Size = new Size(93, 47); @@ -111,6 +113,7 @@ // // btnPg // + btnPg.Font = new Font("Noto Sans SC", 9F, FontStyle.Regular, GraphicsUnit.Point, 0); btnPg.Location = new Point(10, 404); btnPg.Name = "btnPg"; btnPg.PageSize = 15; @@ -123,7 +126,7 @@ // // label1 // - label1.Font = new Font("Noto Sans SC", 12.7499981F); + label1.Font = new Font("Noto Sans SC", 12F); label1.Location = new Point(283, 453); label1.Name = "label1"; label1.Size = new Size(86, 26); @@ -133,7 +136,7 @@ // // label2 // - label2.Font = new Font("Noto Sans SC", 12.7499981F); + label2.Font = new Font("Noto Sans SC", 12F); label2.Location = new Point(12, 453); label2.Name = "label2"; label2.Size = new Size(86, 26); @@ -143,7 +146,7 @@ // // txtCustoName // - txtCustoName.Font = new Font("Microsoft YaHei UI", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); + txtCustoName.Font = new Font("Noto Sans SC", 12F); txtCustoName.Location = new Point(375, 444); txtCustoName.Name = "txtCustoName"; txtCustoName.PlaceholderText = "请输入客户姓名..."; @@ -152,7 +155,7 @@ // // txtCustoNo // - txtCustoNo.Font = new Font("Microsoft YaHei UI", 12F, FontStyle.Regular, GraphicsUnit.Point, 134); + txtCustoNo.Font = new Font("Noto Sans SC", 12F); txtCustoNo.Location = new Point(104, 444); txtCustoNo.Name = "txtCustoNo"; txtCustoNo.PlaceholderText = "请输入客户编号..."; diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.cs index ade0917..f30ffe8 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.cs @@ -2,15 +2,7 @@ using EOM.TSHotelManagement.Common; using EOM.TSHotelManagement.Common.Contract; using jvncorelib.EntityLib; -using System; -using System.Collections.Generic; -using System.ComponentModel; using System.Data; -using System.Drawing; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System.Windows.Forms; namespace EOM.TSHotelManagement.FormUI { @@ -40,7 +32,7 @@ namespace EOM.TSHotelManagement.FormUI NotificationService.ShowError($"{ApiConstants.Base_SelectNationAll}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - cboEmployeeNation.Items.AddRange(nations.Data.Items.Select(item=> new AntdUI.SelectItem(item.NationName,item.NationNumber)).ToArray()); + cboEmployeeNation.Items.AddRange(nations.Data.Items.Select(item => new AntdUI.SelectItem(item.NationName, item.NationNumber)).ToArray()); //加载性别信息 dic = new Dictionary { diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmProgress.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmProgress.Designer.cs index e38b24a..319a074 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmProgress.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmProgress.Designer.cs @@ -35,6 +35,7 @@ // spin1 // spin1.BackColor = Color.Transparent; + spin1.Font = new Font("Noto Sans SC", 10F); spin1.Location = new Point(7, 13); spin1.Name = "spin1"; spin1.Size = new Size(141, 84); diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserList.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserList.Designer.cs index de72f78..0611e42 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserList.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserList.Designer.cs @@ -42,15 +42,15 @@ btnPg = new AntdUI.Pagination(); ucWindowHeader1 = new ucWindowHeader(); btnOk = new AntdUI.Button(); - cboGender = new AntdUI.Dropdown(); txtCustomerName = new AntdUI.Input(); txtCustomerId = new AntdUI.Input(); txtCustomerAddress = new AntdUI.Input(); txtCustomerTel = new AntdUI.Input(); txtCustomerCardID = new AntdUI.Input(); - cboPassportType = new AntdUI.Dropdown(); - cboCustomerType = new AntdUI.Dropdown(); dtpDateOfBirth = new AntdUI.DatePicker(); + cboCustomerType = new AntdUI.Select(); + cboPassportType = new AntdUI.Select(); + cboGender = new AntdUI.Select(); SuspendLayout(); // // label10 @@ -145,6 +145,7 @@ // // dgvReserList // + dgvReserList.Font = new Font("Noto Sans SC", 9F); dgvReserList.Gap = 12; dgvReserList.Location = new Point(14, 87); dgvReserList.Name = "dgvReserList"; @@ -155,6 +156,7 @@ // // btnPg // + btnPg.Font = new Font("Noto Sans SC", 9F); btnPg.Location = new Point(14, 253); btnPg.Name = "btnPg"; btnPg.PageSize = 15; @@ -183,17 +185,6 @@ btnOk.Type = AntdUI.TTypeMini.Info; btnOk.Click += btnSelect_Click; // - // cboGender - // - cboGender.DropDownArrow = true; - cboGender.Font = new Font("Noto Sans SC", 12F); - cboGender.Location = new Point(121, 396); - cboGender.Name = "cboGender"; - cboGender.Placement = AntdUI.TAlignFrom.Bottom; - cboGender.Size = new Size(251, 40); - cboGender.TabIndex = 156; - cboGender.ToggleType = AntdUI.TTypeMini.Info; - // // txtCustomerName // txtCustomerName.Font = new Font("Noto Sans SC", 12F); @@ -222,49 +213,60 @@ // txtCustomerTel // txtCustomerTel.Font = new Font("Noto Sans SC", 12F); - txtCustomerTel.Location = new Point(501, 441); + txtCustomerTel.Location = new Point(501, 444); txtCustomerTel.Name = "txtCustomerTel"; - txtCustomerTel.Size = new Size(250, 45); + txtCustomerTel.Size = new Size(250, 43); txtCustomerTel.TabIndex = 158; // // txtCustomerCardID // txtCustomerCardID.Font = new Font("Noto Sans SC", 12F); - txtCustomerCardID.Location = new Point(501, 389); + txtCustomerCardID.Location = new Point(501, 394); txtCustomerCardID.Name = "txtCustomerCardID"; txtCustomerCardID.Size = new Size(250, 45); txtCustomerCardID.TabIndex = 159; txtCustomerCardID.Validated += txtCardID_Validated; // - // cboPassportType + // dtpDateOfBirth // - cboPassportType.DropDownArrow = true; - cboPassportType.Font = new Font("Noto Sans SC", 12F); - cboPassportType.Location = new Point(501, 342); - cboPassportType.Name = "cboPassportType"; - cboPassportType.Placement = AntdUI.TAlignFrom.Bottom; - cboPassportType.Size = new Size(250, 40); - cboPassportType.TabIndex = 160; - cboPassportType.ToggleType = AntdUI.TTypeMini.Info; + dtpDateOfBirth.Font = new Font("Noto Sans SC", 10F); + dtpDateOfBirth.Location = new Point(120, 444); + dtpDateOfBirth.Name = "dtpDateOfBirth"; + dtpDateOfBirth.Size = new Size(252, 43); + dtpDateOfBirth.TabIndex = 162; // // cboCustomerType // - cboCustomerType.DropDownArrow = true; cboCustomerType.Font = new Font("Noto Sans SC", 12F); - cboCustomerType.Location = new Point(499, 295); + cboCustomerType.List = true; + cboCustomerType.ListAutoWidth = true; + cboCustomerType.Location = new Point(501, 293); cboCustomerType.Name = "cboCustomerType"; cboCustomerType.Placement = AntdUI.TAlignFrom.Bottom; - cboCustomerType.Size = new Size(250, 40); - cboCustomerType.TabIndex = 161; - cboCustomerType.ToggleType = AntdUI.TTypeMini.Info; + cboCustomerType.Size = new Size(251, 45); + cboCustomerType.TabIndex = 178; // - // dtpDateOfBirth + // cboPassportType // - dtpDateOfBirth.Font = new Font("Noto Sans SC", 10F); - dtpDateOfBirth.Location = new Point(120, 444); - dtpDateOfBirth.Name = "dtpDateOfBirth"; - dtpDateOfBirth.Size = new Size(252, 43); - dtpDateOfBirth.TabIndex = 162; + cboPassportType.Font = new Font("Noto Sans SC", 12F); + cboPassportType.List = true; + cboPassportType.ListAutoWidth = true; + cboPassportType.Location = new Point(501, 343); + cboPassportType.Name = "cboPassportType"; + cboPassportType.Placement = AntdUI.TAlignFrom.Bottom; + cboPassportType.Size = new Size(251, 45); + cboPassportType.TabIndex = 177; + // + // cboGender + // + cboGender.Font = new Font("Noto Sans SC", 12F); + cboGender.List = true; + cboGender.ListAutoWidth = true; + cboGender.Location = new Point(122, 394); + cboGender.Name = "cboGender"; + cboGender.Placement = AntdUI.TAlignFrom.Bottom; + cboGender.Size = new Size(251, 45); + cboGender.TabIndex = 179; // // FrmReserList // @@ -272,13 +274,13 @@ BackColor = Color.FromArgb(235, 243, 255); BackgroundImageLayout = ImageLayout.Stretch; ClientSize = new Size(763, 556); - Controls.Add(dtpDateOfBirth); + Controls.Add(cboGender); Controls.Add(cboCustomerType); Controls.Add(cboPassportType); + Controls.Add(dtpDateOfBirth); Controls.Add(txtCustomerCardID); Controls.Add(txtCustomerTel); Controls.Add(txtCustomerAddress); - Controls.Add(cboGender); Controls.Add(txtCustomerName); Controls.Add(txtCustomerId); Controls.Add(btnOk); @@ -319,14 +321,14 @@ private AntdUI.Pagination btnPg; private ucWindowHeader ucWindowHeader1; private AntdUI.Button btnOk; - private AntdUI.Dropdown cboGender; private AntdUI.Input txtCustomerName; private AntdUI.Input txtCustomerId; private AntdUI.Input txtCustomerAddress; private AntdUI.Input txtCustomerTel; private AntdUI.Input txtCustomerCardID; - private AntdUI.Dropdown cboPassportType; - private AntdUI.Dropdown cboCustomerType; private AntdUI.DatePicker dtpDateOfBirth; + private AntdUI.Select cboCustomerType; + private AntdUI.Select cboPassportType; + private AntdUI.Select cboGender; } } \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserList.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserList.cs index f3757b1..bf4ef3f 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserList.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserList.cs @@ -123,7 +123,7 @@ namespace EOM.TSHotelManagement.FormUI return; } List lstDataGrid = customerTypeDataSource.Data.Items; - this.cboCustomerType.Items.AddRange(lstDataGrid.Select(item=>new AntdUI.SelectItem(item.CustomerTypeName,item.CustomerType)).ToArray()); + this.cboCustomerType.Items.AddRange(lstDataGrid.Select(item => new AntdUI.SelectItem(item.CustomerTypeName, item.CustomerType)).ToArray()); #endregion #region 加载证件类型信息 diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserManagement.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserManagement.Designer.cs index 1a16804..1615606 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserManagement.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserManagement.Designer.cs @@ -39,70 +39,70 @@ btnReser = new AntdUI.Button(); txtCustoName = new AntdUI.Input(); txtCustoTel = new AntdUI.Input(); - cboReserWay = new AntdUI.Dropdown(); - cboReserRoomNo = new AntdUI.Dropdown(); dtpStartDate = new AntdUI.DatePicker(); dtpEndDate = new AntdUI.DatePicker(); whReserRoomManagement = new ucWindowHeader(); + cboReserChannel = new AntdUI.Select(); + cboReserRoom = new AntdUI.Select(); SuspendLayout(); // // label1 // label1.AutoSize = true; - label1.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label1.Location = new Point(291, 56); + label1.Font = new Font("Noto Sans SC", 14.25F); + label1.Location = new Point(283, 62); label1.Name = "label1"; - label1.Size = new Size(88, 25); + label1.Size = new Size(85, 19); label1.TabIndex = 106; - label1.Text = "预约号码"; + label1.Text = "电话号码"; // // label9 // label9.AutoSize = true; - label9.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label9.Location = new Point(14, 59); + label9.Font = new Font("Noto Sans SC", 14.25F); + label9.Location = new Point(24, 62); label9.Name = "label9"; - label9.Size = new Size(88, 25); + label9.Size = new Size(85, 19); label9.TabIndex = 105; label9.Text = "客户姓名"; // // label10 // label10.AutoSize = true; - label10.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label10.Location = new Point(16, 106); + label10.Font = new Font("Noto Sans SC", 14.25F); + label10.Location = new Point(24, 110); label10.Name = "label10"; - label10.Size = new Size(88, 25); + label10.Size = new Size(85, 19); label10.TabIndex = 109; label10.Text = "预约渠道"; // // label11 // label11.AutoSize = true; - label11.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label11.Location = new Point(292, 104); + label11.Font = new Font("Noto Sans SC", 14.25F); + label11.Location = new Point(284, 110); label11.Name = "label11"; - label11.Size = new Size(88, 25); + label11.Size = new Size(85, 19); label11.TabIndex = 111; label11.Text = "预约房号"; // // label12 // label12.AutoSize = true; - label12.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label12.Location = new Point(14, 153); + label12.Font = new Font("Noto Sans SC", 14.25F); + label12.Location = new Point(24, 158); label12.Name = "label12"; - label12.Size = new Size(88, 25); + label12.Size = new Size(85, 19); label12.TabIndex = 113; label12.Text = "预约起始"; // // label13 // label13.AutoSize = true; - label13.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label13.Location = new Point(292, 152); + label13.Font = new Font("Noto Sans SC", 14.25F); + label13.Location = new Point(284, 158); label13.Name = "label13"; - label13.Size = new Size(88, 25); + label13.Size = new Size(85, 19); label13.TabIndex = 115; label13.Text = "预约止日"; // @@ -130,7 +130,7 @@ // txtCustoName // txtCustoName.Font = new Font("Noto Sans SC", 12F); - txtCustoName.Location = new Point(107, 49); + txtCustoName.Location = new Point(115, 49); txtCustoName.Name = "txtCustoName"; txtCustoName.Size = new Size(162, 45); txtCustoName.TabIndex = 121; @@ -138,37 +138,15 @@ // txtCustoTel // txtCustoTel.Font = new Font("Noto Sans SC", 12F); - txtCustoTel.Location = new Point(384, 49); + txtCustoTel.Location = new Point(376, 49); txtCustoTel.Name = "txtCustoTel"; - txtCustoTel.Size = new Size(162, 45); + txtCustoTel.Size = new Size(161, 45); txtCustoTel.TabIndex = 122; // - // cboReserWay - // - cboReserWay.DropDownArrow = true; - cboReserWay.Font = new Font("Noto Sans SC", 12F); - cboReserWay.Location = new Point(107, 100); - cboReserWay.Name = "cboReserWay"; - cboReserWay.Placement = AntdUI.TAlignFrom.Bottom; - cboReserWay.Size = new Size(159, 40); - cboReserWay.TabIndex = 123; - cboReserWay.ToggleType = AntdUI.TTypeMini.Info; - // - // cboReserRoomNo - // - cboReserRoomNo.DropDownArrow = true; - cboReserRoomNo.Font = new Font("Noto Sans SC", 12F); - cboReserRoomNo.Location = new Point(386, 100); - cboReserRoomNo.Name = "cboReserRoomNo"; - cboReserRoomNo.Placement = AntdUI.TAlignFrom.Bottom; - cboReserRoomNo.Size = new Size(157, 40); - cboReserRoomNo.TabIndex = 124; - cboReserRoomNo.ToggleType = AntdUI.TTypeMini.Info; - // // dtpStartDate // dtpStartDate.Font = new Font("Noto Sans SC", 10F); - dtpStartDate.Location = new Point(107, 146); + dtpStartDate.Location = new Point(115, 146); dtpStartDate.Name = "dtpStartDate"; dtpStartDate.Size = new Size(162, 43); dtpStartDate.TabIndex = 125; @@ -176,9 +154,9 @@ // dtpEndDate // dtpEndDate.Font = new Font("Noto Sans SC", 10F); - dtpEndDate.Location = new Point(384, 146); + dtpEndDate.Location = new Point(376, 146); dtpEndDate.Name = "dtpEndDate"; - dtpEndDate.Size = new Size(162, 43); + dtpEndDate.Size = new Size(161, 43); dtpEndDate.TabIndex = 126; // // whReserRoomManagement @@ -188,17 +166,39 @@ whReserRoomManagement.Size = new Size(562, 34); whReserRoomManagement.TabIndex = 141; // + // cboReserChannel + // + cboReserChannel.Font = new Font("Noto Sans SC", 12F); + cboReserChannel.List = true; + cboReserChannel.ListAutoWidth = true; + cboReserChannel.Location = new Point(115, 100); + cboReserChannel.Name = "cboReserChannel"; + cboReserChannel.Placement = AntdUI.TAlignFrom.Bottom; + cboReserChannel.Size = new Size(162, 40); + cboReserChannel.TabIndex = 175; + // + // cboReserRoom + // + cboReserRoom.Font = new Font("Noto Sans SC", 12F); + cboReserRoom.List = true; + cboReserRoom.ListAutoWidth = true; + cboReserRoom.Location = new Point(376, 100); + cboReserRoom.Name = "cboReserRoom"; + cboReserRoom.Placement = AntdUI.TAlignFrom.Bottom; + cboReserRoom.Size = new Size(161, 40); + cboReserRoom.TabIndex = 176; + // // FrmReserManager // AutoScaleMode = AutoScaleMode.None; BackColor = Color.FromArgb(235, 243, 255); BackgroundImageLayout = ImageLayout.Stretch; ClientSize = new Size(560, 251); + Controls.Add(cboReserRoom); + Controls.Add(cboReserChannel); Controls.Add(whReserRoomManagement); Controls.Add(dtpEndDate); Controls.Add(dtpStartDate); - Controls.Add(cboReserRoomNo); - Controls.Add(cboReserWay); Controls.Add(txtCustoTel); Controls.Add(txtCustoName); Controls.Add(btnReser); @@ -231,10 +231,10 @@ private AntdUI.Button btnReser; private AntdUI.Input txtCustoName; private AntdUI.Input txtCustoTel; - private AntdUI.Dropdown cboReserWay; - private AntdUI.Dropdown cboReserRoomNo; private AntdUI.DatePicker dtpStartDate; private AntdUI.DatePicker dtpEndDate; private ucWindowHeader whReserRoomManagement; + private AntdUI.Select cboReserChannel; + private AntdUI.Select cboReserRoom; } } \ No newline at end of file diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserManagement.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserManagement.cs index 92c6d8d..c328bf3 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserManagement.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmReserManagement.cs @@ -59,8 +59,8 @@ namespace EOM.TSHotelManagement.FormUI ReservationId = reserid, CustomerName = txtCustoName.Text.Trim(), ReservationPhoneNumber = txtCustoTel.Text.Trim(), - ReservationChannel = cboReserWay.Text, - ReservationRoomNumber = cboReserRoomNo.Text, + ReservationChannel = cboReserChannel.SelectedValue?.ToString() ?? string.Empty, + ReservationRoomNumber = cboReserRoom.Text, ReservationStartDate = dtpStartDate.Value ?? dtpStartDate.Value.GetValueOrDefault(), ReservationEndDate = dtpEndDate.Value ?? dtpEndDate.Value.GetValueOrDefault(), DataInsUsr = LoginInfo.WorkerNo, @@ -68,7 +68,7 @@ namespace EOM.TSHotelManagement.FormUI }; UpdateRoomInputDto room = new UpdateRoomInputDto() { - RoomNumber = cboReserRoomNo.Text, + RoomNumber = cboReserRoom.Text, RoomStateId = (int)RoomState.Reserved, DataInsDate = DateTime.Now, DataInsUsr = LoginInfo.WorkerNo @@ -93,6 +93,7 @@ namespace EOM.TSHotelManagement.FormUI #endregion scope.Complete(); FrmRoomManager.Reload(""); + FrmRoomManager._RefreshRoomCount(); this.Close(); } } @@ -106,8 +107,18 @@ namespace EOM.TSHotelManagement.FormUI NotificationService.ShowError($"{ApiConstants.Room_SelectCanUseRoomAll}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - cboReserRoomNo.Items.AddRange(response.Data.Items.Select(item => new AntdUI.SelectItem(item.RoomNumber)).ToArray()); - cboReserRoomNo.Text = ucRoom.co_RoomNo; + cboReserRoom.Items.AddRange(response.Data.Items.Select(item => new AntdUI.SelectItem(item.RoomNumber)).ToArray()); + + result = HttpHelper.Request(ApiConstants.Reser_SelectReserTypeAll); + var reserTypes = HttpHelper.JsonToModel>(result.message); + if (reserTypes.Success == false) + { + NotificationService.ShowError($"{ApiConstants.Reser_SelectReserTypeAll}+接口服务异常,请提交Issue或尝试更新版本!"); + return; + } + cboReserChannel.Items.AddRange(reserTypes.Data.Items.Select(item => new AntdUI.SelectItem(item.Description, item.Name)).ToArray()); + + cboReserRoom.Text = ucRoom.co_RoomNo; dtpStartDate.Value = Convert.ToDateTime(DateTime.Now); } diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomManagement.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomManagement.Designer.cs index 7cfe2cd..323a5ca 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomManagement.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomManagement.Designer.cs @@ -67,116 +67,116 @@ // lblRoomState // lblRoomState.AutoSize = true; - lblRoomState.Font = new Font("Microsoft Sans Serif", 9F, FontStyle.Regular, GraphicsUnit.Point, 134); - lblRoomState.Location = new Point(86, 146); + lblRoomState.Font = new Font("Noto Sans SC", 12F); + lblRoomState.Location = new Point(108, 277); lblRoomState.Margin = new Padding(4, 0, 4, 0); lblRoomState.Name = "lblRoomState"; - lblRoomState.Size = new Size(10, 15); + lblRoomState.Size = new Size(12, 17); lblRoomState.TabIndex = 16; lblRoomState.Text = " "; // // label11 // label11.AutoSize = true; - label11.Font = new Font("Microsoft Sans Serif", 9F, FontStyle.Regular, GraphicsUnit.Point, 134); - label11.Location = new Point(11, 146); + label11.Font = new Font("Noto Sans SC", 12F); + label11.Location = new Point(11, 277); label11.Margin = new Padding(4, 0, 4, 0); label11.Name = "label11"; - label11.Size = new Size(67, 15); + label11.Size = new Size(88, 17); label11.TabIndex = 15; label11.Text = "房间状态:"; // // lblRoomNo // lblRoomNo.AutoSize = true; - lblRoomNo.Font = new Font("Microsoft Sans Serif", 9F, FontStyle.Regular, GraphicsUnit.Point, 134); - lblRoomNo.Location = new Point(86, 13); + lblRoomNo.Font = new Font("Noto Sans SC", 12F); + lblRoomNo.Location = new Point(108, 13); lblRoomNo.Margin = new Padding(4, 0, 4, 0); lblRoomNo.Name = "lblRoomNo"; - lblRoomNo.Size = new Size(10, 15); + lblRoomNo.Size = new Size(12, 17); lblRoomNo.TabIndex = 14; lblRoomNo.Text = " "; // // lblCustoName // lblCustoName.AutoSize = true; - lblCustoName.Font = new Font("Microsoft Sans Serif", 9F, FontStyle.Regular, GraphicsUnit.Point, 134); - lblCustoName.Location = new Point(86, 46); + lblCustoName.Font = new Font("Noto Sans SC", 12F); + lblCustoName.Location = new Point(108, 79); lblCustoName.Margin = new Padding(4, 0, 4, 0); lblCustoName.Name = "lblCustoName"; - lblCustoName.Size = new Size(10, 15); + lblCustoName.Size = new Size(12, 17); lblCustoName.TabIndex = 12; lblCustoName.Text = " "; // // lblRoomPosition // lblRoomPosition.AutoSize = true; - lblRoomPosition.Font = new Font("Microsoft Sans Serif", 9F, FontStyle.Regular, GraphicsUnit.Point, 134); - lblRoomPosition.Location = new Point(86, 113); + lblRoomPosition.Font = new Font("Noto Sans SC", 12F); + lblRoomPosition.Location = new Point(108, 211); lblRoomPosition.Margin = new Padding(4, 0, 4, 0); lblRoomPosition.Name = "lblRoomPosition"; - lblRoomPosition.Size = new Size(10, 15); + lblRoomPosition.Size = new Size(12, 17); lblRoomPosition.TabIndex = 10; lblRoomPosition.Text = " "; // // lblCheckTime // lblCheckTime.AutoSize = true; - lblCheckTime.Font = new Font("Microsoft Sans Serif", 9F, FontStyle.Regular, GraphicsUnit.Point, 134); - lblCheckTime.Location = new Point(86, 80); + lblCheckTime.Font = new Font("Noto Sans SC", 12F); + lblCheckTime.Location = new Point(108, 145); lblCheckTime.Margin = new Padding(4, 0, 4, 0); lblCheckTime.Name = "lblCheckTime"; - lblCheckTime.Size = new Size(10, 15); + lblCheckTime.Size = new Size(12, 17); lblCheckTime.TabIndex = 9; lblCheckTime.Text = " "; // // label4 // label4.AutoSize = true; - label4.Font = new Font("Microsoft Sans Serif", 9F, FontStyle.Regular, GraphicsUnit.Point, 134); - label4.Location = new Point(11, 113); + label4.Font = new Font("Noto Sans SC", 12F); + label4.Location = new Point(11, 211); label4.Margin = new Padding(4, 0, 4, 0); label4.Name = "label4"; - label4.Size = new Size(67, 15); + label4.Size = new Size(88, 17); label4.TabIndex = 3; label4.Text = "所在区域:"; // // label3 // label3.AutoSize = true; - label3.Font = new Font("Microsoft Sans Serif", 9F, FontStyle.Regular, GraphicsUnit.Point, 134); - label3.Location = new Point(11, 80); + label3.Font = new Font("Noto Sans SC", 12F); + label3.Location = new Point(11, 145); label3.Margin = new Padding(4, 0, 4, 0); label3.Name = "label3"; - label3.Size = new Size(67, 15); + label3.Size = new Size(88, 17); label3.TabIndex = 2; label3.Text = "入住时间:"; // // label2 // label2.AutoSize = true; - label2.Font = new Font("Microsoft Sans Serif", 9F, FontStyle.Regular, GraphicsUnit.Point, 134); - label2.Location = new Point(11, 46); + label2.Font = new Font("Noto Sans SC", 12F); + label2.Location = new Point(11, 79); label2.Margin = new Padding(4, 0, 4, 0); label2.Name = "label2"; - label2.Size = new Size(67, 15); + label2.Size = new Size(88, 17); label2.TabIndex = 1; label2.Text = "客户名字:"; // // label1 // label1.AutoSize = true; - label1.Font = new Font("Microsoft Sans Serif", 9F, FontStyle.Regular, GraphicsUnit.Point, 134); + label1.Font = new Font("Noto Sans SC", 12F); label1.Location = new Point(11, 13); label1.Margin = new Padding(4, 0, 4, 0); label1.Name = "label1"; - label1.Size = new Size(67, 15); + label1.Size = new Size(88, 17); label1.TabIndex = 0; label1.Text = "房间号码:"; // // muRoomState // - muRoomState.Font = new Font("Microsoft YaHei UI", 10F); + muRoomState.Font = new Font("Noto Sans SC", 10F); muRoomState.Indent = true; muRoomState.Location = new Point(2, 4); muRoomState.Mode = AntdUI.TMenuMode.Vertical; diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomManagement.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomManagement.cs index cef7ae7..79a5e5d 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomManagement.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomManagement.cs @@ -26,7 +26,6 @@ using AntdUI; using EOM.TSHotelManagement.Common; using EOM.TSHotelManagement.Common.Contract; using EOM.TSHotelManagement.Common.Core; -using EOM.TSHotelManagement.FormUI.AppUserControls; using EOM.TSHotelManagement.FormUI.Properties; using EOM.TSHotelManagement.Shared; using jvncorelib.EntityLib; @@ -341,7 +340,6 @@ namespace EOM.TSHotelManagement.FormUI { room = new ucRoom(this); room.btnRoom.Text = string.Format("{0}\n\n{1}\n\n{2}", romsty[i].RoomName, romsty[i].RoomNumber, romsty[i].CustomerName ?? " "); - room.lblMark = string.Empty; room.romRoomInfo = romsty[i]; room.romCustoInfo = new ReadCustomerOutputDto { CustomerNumber = romsty[i].CustomerNumber, CustomerName = romsty[i].CustomerName }; flpRoom.Controls.Add(room); @@ -375,7 +373,6 @@ namespace EOM.TSHotelManagement.FormUI { room = new ucRoom(this); room.btnRoom.Text = string.Format("{0}\n\n{1}\n\n{2}", romsty[i].RoomName, romsty[i].RoomNumber, romsty[i].CustomerName); - room.lblMark = string.Empty; room.romRoomInfo = romsty[i]; room.romCustoInfo = new ReadCustomerOutputDto { CustomerNumber = romsty[i].CustomerNumber, CustomerName = romsty[i].CustomerName }; flpRoom.Controls.Add(room); diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomStateManagement.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomStateManagement.Designer.cs index e2b621e..aa7f6b3 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomStateManagement.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomStateManagement.Designer.cs @@ -40,20 +40,20 @@ // label2 // label2.AutoSize = true; - label2.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label2.Location = new Point(7, 54); + label2.Font = new Font("Noto Sans SC", 14F); + label2.Location = new Point(7, 57); label2.Name = "label2"; - label2.Size = new Size(88, 25); + label2.Size = new Size(85, 19); label2.TabIndex = 132; label2.Text = "房间号码"; // // label1 // label1.AutoSize = true; - label1.Font = new Font("微软雅黑", 14.25F, FontStyle.Regular, GraphicsUnit.Point, 134); - label1.Location = new Point(7, 106); + label1.Font = new Font("Noto Sans SC", 14F); + label1.Location = new Point(7, 109); label1.Name = "label1"; - label1.Size = new Size(88, 25); + label1.Size = new Size(85, 19); label1.TabIndex = 134; label1.Text = "房间状态"; // diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.Designer.cs index 5df8dd6..e6ae042 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.Designer.cs @@ -64,7 +64,7 @@ groupBox2.Controls.Add(txtPrice); groupBox2.Controls.Add(txtSellName); groupBox2.Controls.Add(txtSellNo); - groupBox2.Font = new Font("Microsoft Sans Serif", 9F, FontStyle.Regular, GraphicsUnit.Point, 134); + groupBox2.Font = new Font("Noto Sans SC", 9F); groupBox2.Location = new Point(617, 88); groupBox2.Name = "groupBox2"; groupBox2.Size = new Size(452, 123); @@ -75,7 +75,7 @@ // label6 // label6.BackColor = Color.Transparent; - label6.Font = new Font("微软雅黑", 12F); + label6.Font = new Font("Noto Sans SC", 12F); label6.Location = new Point(258, 32); label6.Name = "label6"; label6.Size = new Size(61, 23); @@ -85,7 +85,7 @@ // label5 // label5.BackColor = Color.Transparent; - label5.Font = new Font("微软雅黑", 12F); + label5.Font = new Font("Noto Sans SC", 12F); label5.Location = new Point(258, 78); label5.Name = "label5"; label5.Size = new Size(61, 23); @@ -95,8 +95,8 @@ // label4 // label4.BackColor = Color.Transparent; - label4.Font = new Font("微软雅黑", 12F); - label4.Location = new Point(26, 78); + label4.Font = new Font("Noto Sans SC", 12F); + label4.Location = new Point(19, 78); label4.Name = "label4"; label4.Size = new Size(92, 23); label4.TabIndex = 36; @@ -106,8 +106,8 @@ // label3 // label3.BackColor = Color.Transparent; - label3.Font = new Font("微软雅黑", 12F); - label3.Location = new Point(26, 32); + label3.Font = new Font("Noto Sans SC", 12F); + label3.Location = new Point(19, 32); label3.Name = "label3"; label3.Size = new Size(92, 23); label3.TabIndex = 35; @@ -116,8 +116,8 @@ // // nudNum // - nudNum.Font = new Font("微软雅黑", 12F); - nudNum.Location = new Point(307, 25); + nudNum.Font = new Font("Noto Sans SC", 12F); + nudNum.Location = new Point(319, 23); nudNum.Name = "nudNum"; nudNum.Size = new Size(119, 38); nudNum.TabIndex = 34; @@ -126,8 +126,8 @@ // // txtPrice // - txtPrice.Font = new Font("微软雅黑", 12F); - txtPrice.Location = new Point(307, 69); + txtPrice.Font = new Font("Noto Sans SC", 12F); + txtPrice.Location = new Point(319, 69); txtPrice.Name = "txtPrice"; txtPrice.ReadOnly = true; txtPrice.Size = new Size(119, 38); @@ -135,8 +135,8 @@ // // txtSellName // - txtSellName.Font = new Font("微软雅黑", 12F); - txtSellName.Location = new Point(107, 69); + txtSellName.Font = new Font("Noto Sans SC", 12F); + txtSellName.Location = new Point(111, 69); txtSellName.Name = "txtSellName"; txtSellName.ReadOnly = true; txtSellName.Size = new Size(145, 38); @@ -144,8 +144,8 @@ // // txtSellNo // - txtSellNo.Font = new Font("微软雅黑", 12F); - txtSellNo.Location = new Point(107, 25); + txtSellNo.Font = new Font("Noto Sans SC", 12F); + txtSellNo.Location = new Point(111, 23); txtSellNo.Name = "txtSellNo"; txtSellNo.ReadOnly = true; txtSellNo.Size = new Size(145, 38); @@ -154,25 +154,25 @@ // label1 // label1.BackColor = Color.Transparent; - label1.Font = new Font("微软雅黑", 12F); - label1.Location = new Point(65, 51); + label1.Font = new Font("Noto Sans SC", 12F); + label1.Location = new Point(45, 51); label1.Name = "label1"; - label1.Size = new Size(125, 23); + label1.Size = new Size(145, 23); label1.TabIndex = 26; - label1.Text = "要查找的商品:"; + label1.Text = "要查找的商品名称:"; label1.TextAlign = ContentAlignment.MiddleCenter; // // txtFind // - txtFind.Font = new Font("微软雅黑", 12F); - txtFind.Location = new Point(200, 44); + txtFind.Font = new Font("Noto Sans SC", 12F); + txtFind.Location = new Point(200, 42); txtFind.Name = "txtFind"; txtFind.Size = new Size(197, 38); txtFind.TabIndex = 27; // // btnFind // - btnFind.Font = new Font("微软雅黑", 12F); + btnFind.Font = new Font("Noto Sans SC", 12F); btnFind.Location = new Point(407, 44); btnFind.Name = "btnFind"; btnFind.Size = new Size(101, 38); @@ -184,7 +184,7 @@ // label2 // label2.BackColor = Color.Transparent; - label2.Font = new Font("微软雅黑", 12F); + label2.Font = new Font("Noto Sans SC", 12F); label2.Location = new Point(518, 51); label2.Name = "label2"; label2.Size = new Size(92, 23); @@ -194,8 +194,8 @@ // // txtRoomNo // - txtRoomNo.Font = new Font("微软雅黑", 12F); - txtRoomNo.Location = new Point(620, 44); + txtRoomNo.Font = new Font("Noto Sans SC", 12F); + txtRoomNo.Location = new Point(617, 42); txtRoomNo.Name = "txtRoomNo"; txtRoomNo.Size = new Size(134, 38); txtRoomNo.TabIndex = 30; @@ -204,7 +204,7 @@ // // btnCheck // - btnCheck.Font = new Font("微软雅黑", 12F); + btnCheck.Font = new Font("Noto Sans SC", 12F); btnCheck.Location = new Point(764, 44); btnCheck.Name = "btnCheck"; btnCheck.Size = new Size(101, 38); @@ -216,7 +216,7 @@ // lblState // lblState.BackColor = Color.Transparent; - lblState.Font = new Font("微软雅黑", 12F); + lblState.Font = new Font("Noto Sans SC", 12F); lblState.Location = new Point(875, 51); lblState.Name = "lblState"; lblState.Size = new Size(130, 23); @@ -228,7 +228,7 @@ // dgvSellthing.AutoSizeColumnsMode = AntdUI.ColumnsMode.Fill; dgvSellthing.Bordered = true; - dgvSellthing.Font = new Font("Microsoft YaHei UI", 9F); + dgvSellthing.Font = new Font("Noto Sans SC", 9F); dgvSellthing.Gap = 12; dgvSellthing.Location = new Point(4, 88); dgvSellthing.Name = "dgvSellthing"; @@ -238,7 +238,7 @@ // // btnPg // - btnPg.Font = new Font("微软雅黑", 12F); + btnPg.Font = new Font("Noto Sans SC", 12F); btnPg.Location = new Point(4, 448); btnPg.Name = "btnPg"; btnPg.PageSize = 15; @@ -249,7 +249,7 @@ // // btnAdd // - btnAdd.Font = new Font("微软雅黑", 12F); + btnAdd.Font = new Font("Noto Sans SC", 12F); btnAdd.Location = new Point(496, 88); btnAdd.Name = "btnAdd"; btnAdd.Size = new Size(115, 38); @@ -260,7 +260,7 @@ // // btnCancel // - btnCancel.Font = new Font("微软雅黑", 12F); + btnCancel.Font = new Font("Noto Sans SC", 12F); btnCancel.Location = new Point(496, 174); btnCancel.Name = "btnCancel"; btnCancel.Size = new Size(115, 38); @@ -273,7 +273,7 @@ // dgvRoomSell.AutoSizeColumnsMode = AntdUI.ColumnsMode.Fill; dgvRoomSell.Bordered = true; - dgvRoomSell.Font = new Font("Microsoft YaHei UI", 9F); + dgvRoomSell.Font = new Font("Noto Sans SC", 9F); dgvRoomSell.Gap = 12; dgvRoomSell.Location = new Point(497, 217); dgvRoomSell.Name = "dgvRoomSell"; diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.cs index ac03a9f..753da66 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmSellThing.cs @@ -74,9 +74,8 @@ namespace EOM.TSHotelManagement.FormUI { dic = new Dictionary() { - { nameof(ReadSellThingInputDto.ProductNumber) , sellthing.Trim() }, { nameof(ReadSellThingInputDto.ProductName) , sellthing.Trim() }, - { nameof(ReadSellThingInputDto.Specification) , sellthing.Trim() } + { nameof(ReadSellThingInputDto.IsDelete) , "0" } }; result = HttpHelper.Request(ApiConstants.Sellthing_SelectSellThingAll, dic); var response = HttpHelper.JsonToModel>(result.message); @@ -105,13 +104,15 @@ namespace EOM.TSHotelManagement.FormUI #endregion #region 根据客户编号加载消费信息的方法 - private void LoadSpendInfoByRoomNo(string room) + private void LoadSpendInfoByRoomNo(ReadRoomOutputDto room) { dgvRoomSell.Spin("正在加载中...", config => { dic = new Dictionary() { - { nameof(ReadSpendInputDto.RoomNumber), room } + { nameof(ReadSpendInputDto.CustomerNumber), room.CustomerNumber }, + { nameof(ReadSpendInputDto.RoomNumber), room.RoomNumber }, + { nameof(ReadSpendInputDto.SettlementStatus) , ConsumptionConstant.UnSettle.Code }, }; result = HttpHelper.Request(ApiConstants.Spend_SelectSpendByRoomNo, dic); var response = HttpHelper.JsonToModel>(result.message); @@ -254,7 +255,7 @@ namespace EOM.TSHotelManagement.FormUI } NotificationService.ShowSuccess("添加成功"); - LoadSpendInfoByRoomNo(txtRoomNo.Text.Trim()); + LoadSpendInfoByRoomNo(r); LoadSellThingInfo(); } catch (Exception ex) @@ -307,8 +308,8 @@ namespace EOM.TSHotelManagement.FormUI return; } ReadSellThingOutputDto s = response.Data; - decimal num = Convert.ToDecimal(spend.ConsumptionQuantity); - decimal inboundStock = (s.Stock + num); + int num = spend.ConsumptionQuantity; + int inboundStock = (s.Stock + num); var model = new UpdateSpendInputDto { SpendNumber = spend.SpendNumber }; result = HttpHelper.Request(ApiConstants.Spend_UndoCustomerSpend, model.ModelToJson()); var undoSpendResponse = HttpHelper.JsonToModel(result.message); @@ -330,7 +331,7 @@ namespace EOM.TSHotelManagement.FormUI #region 获取添加操作日志所需的信息 RecordHelper.Record(LoginInfo.WorkerNo + "-" + LoginInfo.WorkerName + "在" + Convert.ToDateTime(DateTime.Now) + "位于" + LoginInfo.SoftwareVersion + "执行:" + "帮助" + spend.CustomerNumber + "撤销了消费商品:" + txtSellName.Text + "操作!", Common.Core.LogLevel.Warning); #endregion - LoadSpendInfoByRoomNo(txtRoomNo.Text); + LoadSpendInfoByRoomNo(r); LoadSellThingInfo(); nudNum.Value = 0; scope.Complete(); @@ -373,7 +374,7 @@ namespace EOM.TSHotelManagement.FormUI } dic = new Dictionary() { - { nameof(ReadRoomInputDto.RoomNumber) , room} + { nameof(ReadSpendInputDto.RoomNumber) , room }, }; result = HttpHelper.Request(ApiConstants.Room_SelectRoomByRoomNo, dic); var checkResponse = HttpHelper.JsonToModel>(result.message); @@ -382,7 +383,7 @@ namespace EOM.TSHotelManagement.FormUI NotificationService.ShowError($"{ApiConstants.Room_SelectRoomByRoomNo}+接口服务异常,请提交Issue或尝试更新版本!"); return; } - ReadRoomOutputDto r = checkResponse.Data; + r = checkResponse.Data; if (txtRoomNo.Text == "") { lblState.Text = ""; @@ -400,7 +401,7 @@ namespace EOM.TSHotelManagement.FormUI lblState.Visible = true; lblState.Text = "该房间可消费"; lblState.ForeColor = Color.Black; - LoadSpendInfoByRoomNo(room); + LoadSpendInfoByRoomNo(r); } else { diff --git a/EOM.TSHotelManagement.FormUI/EOM.TSHotelManagement.FormUI.csproj b/EOM.TSHotelManagement.FormUI/EOM.TSHotelManagement.FormUI.csproj index a4a3e0f..4315ea4 100644 --- a/EOM.TSHotelManagement.FormUI/EOM.TSHotelManagement.FormUI.csproj +++ b/EOM.TSHotelManagement.FormUI/EOM.TSHotelManagement.FormUI.csproj @@ -11,7 +11,7 @@ true enable true - 2.8.5.3 + 2.8.6.0 EOM.TSHotelManagement.FormUI.Program x64 TS酒店管理系统 diff --git a/EOM.TSHotelManagement.FormUI/Properties/Resources.Designer.cs b/EOM.TSHotelManagement.FormUI/Properties/Resources.Designer.cs index e5f8616..662e6ee 100644 --- a/EOM.TSHotelManagement.FormUI/Properties/Resources.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/Properties/Resources.Designer.cs @@ -70,46 +70,6 @@ namespace EOM.TSHotelManagement.FormUI.Properties { } } - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap arrow_down_b { - get { - object obj = ResourceManager.GetObject("arrow-down-b", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap blue_refresh { - get { - object obj = ResourceManager.GetObject("blue_refresh", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap close { - get { - object obj = ResourceManager.GetObject("close", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap jpg_auto_04N58PICPw2s58PICaP4M8cef_PIC2018_jpg_w1024_new_small { - get { - object obj = ResourceManager.GetObject("jpg_auto_04N58PICPw2s58PICaP4M8cef_PIC2018.jpg!w1024_new_small", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - /// /// 查找 System.Drawing.Bitmap 类型的本地化资源。 /// @@ -160,26 +120,6 @@ namespace EOM.TSHotelManagement.FormUI.Properties { } } - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap picExtend_Image { - get { - object obj = ResourceManager.GetObject("picExtend.Image", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap picExtend_ImageHover { - get { - object obj = ResourceManager.GetObject("picExtend.ImageHover", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - /// /// 查找 System.Drawing.Bitmap 类型的本地化资源。 /// @@ -220,96 +160,6 @@ namespace EOM.TSHotelManagement.FormUI.Properties { } } - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 上传照片 { - get { - object obj = ResourceManager.GetObject("上传照片", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 个人中心 { - get { - object obj = ResourceManager.GetObject("个人中心", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 人力资源部卡片 { - get { - object obj = ResourceManager.GetObject("人力资源部卡片", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 修改 { - get { - object obj = ResourceManager.GetObject("修改", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 关于我们 { - get { - object obj = ResourceManager.GetObject("关于我们", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 内控部卡片 { - get { - object obj = ResourceManager.GetObject("内控部卡片", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 切换账号 { - get { - object obj = ResourceManager.GetObject("切换账号", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 可住房_hover_icon { - get { - object obj = ResourceManager.GetObject("可住房(hover)icon", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 可住房icon { - get { - object obj = ResourceManager.GetObject("可住房icon", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - /// /// 查找 System.Drawing.Bitmap 类型的本地化资源。 /// @@ -320,36 +170,6 @@ namespace EOM.TSHotelManagement.FormUI.Properties { } } - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 后勤部卡片 { - get { - object obj = ResourceManager.GetObject("后勤部卡片", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 咖啡 { - get { - object obj = ResourceManager.GetObject("咖啡", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 商品部卡片 { - get { - object obj = ResourceManager.GetObject("商品部卡片", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - /// /// 查找 System.Drawing.Bitmap 类型的本地化资源。 /// @@ -370,26 +190,6 @@ namespace EOM.TSHotelManagement.FormUI.Properties { } } - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 已住房_hover_icon { - get { - object obj = ResourceManager.GetObject("已住房(hover)icon", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 已住房icon { - get { - object obj = ResourceManager.GetObject("已住房icon", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - /// /// 查找 System.Drawing.Bitmap 类型的本地化资源。 /// @@ -400,26 +200,6 @@ namespace EOM.TSHotelManagement.FormUI.Properties { } } - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 常规部门卡片 { - get { - object obj = ResourceManager.GetObject("常规部门卡片", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 总经办卡片 { - get { - object obj = ResourceManager.GetObject("总经办卡片", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - /// /// 查找 System.Drawing.Bitmap 类型的本地化资源。 /// @@ -430,56 +210,6 @@ namespace EOM.TSHotelManagement.FormUI.Properties { } } - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 早上 { - get { - object obj = ResourceManager.GetObject("早上", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 普通会员 { - get { - object obj = ResourceManager.GetObject("普通会员", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 月亮 { - get { - object obj = ResourceManager.GetObject("月亮", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 检查更新__1_ { - get { - object obj = ResourceManager.GetObject("检查更新 (1)", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 注销 { - get { - object obj = ResourceManager.GetObject("注销", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - /// /// 查找 System.Drawing.Bitmap 类型的本地化资源。 /// @@ -490,66 +220,6 @@ namespace EOM.TSHotelManagement.FormUI.Properties { } } - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 白金会员 { - get { - object obj = ResourceManager.GetObject("白金会员", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 监管小组卡片 { - get { - object obj = ResourceManager.GetObject("监管小组卡片", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 系统管理员 { - get { - object obj = ResourceManager.GetObject("系统管理员", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 经理部卡片 { - get { - object obj = ResourceManager.GetObject("经理部卡片", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 维修房_hover_icon { - get { - object obj = ResourceManager.GetObject("维修房(hover)icon", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 维修房icon { - get { - object obj = ResourceManager.GetObject("维修房icon", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - /// /// 查找 System.Drawing.Bitmap 类型的本地化资源。 /// @@ -560,36 +230,6 @@ namespace EOM.TSHotelManagement.FormUI.Properties { } } - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 维修部卡片 { - get { - object obj = ResourceManager.GetObject("维修部卡片", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 脏房_hover_icon { - get { - object obj = ResourceManager.GetObject("脏房(hover)icon", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 脏房icon1 { - get { - object obj = ResourceManager.GetObject("脏房icon1", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - /// /// 查找 System.Drawing.Bitmap 类型的本地化资源。 /// @@ -600,16 +240,6 @@ namespace EOM.TSHotelManagement.FormUI.Properties { } } - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 财务部卡片 { - get { - object obj = ResourceManager.GetObject("财务部卡片", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - /// /// 查找 System.Drawing.Bitmap 类型的本地化资源。 /// @@ -630,56 +260,6 @@ namespace EOM.TSHotelManagement.FormUI.Properties { } } - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 酒店部卡片 { - get { - object obj = ResourceManager.GetObject("酒店部卡片", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 钻石会员 { - get { - object obj = ResourceManager.GetObject("钻石会员", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 锁屏 { - get { - object obj = ResourceManager.GetObject("锁屏", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 预约房_hover_icon { - get { - object obj = ResourceManager.GetObject("预约房(hover)icon", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 预约房icon { - get { - object obj = ResourceManager.GetObject("预约房icon", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - /// /// 查找 System.Drawing.Bitmap 类型的本地化资源。 /// @@ -689,25 +269,5 @@ namespace EOM.TSHotelManagement.FormUI.Properties { return ((System.Drawing.Bitmap)(obj)); } } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 餐饮部卡片 { - get { - object obj = ResourceManager.GetObject("餐饮部卡片", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } - - /// - /// 查找 System.Drawing.Bitmap 类型的本地化资源。 - /// - internal static System.Drawing.Bitmap 黄金会员 { - get { - object obj = ResourceManager.GetObject("黄金会员", resourceCulture); - return ((System.Drawing.Bitmap)(obj)); - } - } } } diff --git a/EOM.TSHotelManagement.FormUI/Properties/Resources.resx b/EOM.TSHotelManagement.FormUI/Properties/Resources.resx index 87e2814..77d69cf 100644 --- a/EOM.TSHotelManagement.FormUI/Properties/Resources.resx +++ b/EOM.TSHotelManagement.FormUI/Properties/Resources.resx @@ -118,30 +118,9 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - ..\Resources\后勤部卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\picExtend.Image.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\修改.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\普通会员.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\注销.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\锁屏.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Resources\picRoom.ImageHover.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\月亮.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Resources\打卡.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -151,138 +130,42 @@ ..\Resources\picRoom.Image.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\餐饮部卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\总经办卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\可住房icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Resources\用户登录.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\商品部卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\上传照片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\白金会员.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\关于我们.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\脏房icon1.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Resources\picCustomer.ImageHover.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\jpg_auto_04N58PICPw2s58PICaP4M8cef_PIC2018.jpg!w1024_new_small.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Resources\密码.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\blue_refresh.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Resources\picCommodity.Image.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\picCommodity.ImageHover.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\财务部卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Resources\lockicon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\维修部卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\人力资源部卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\切换账号.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Resources\settings2.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\脏房(hover)icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\已住房(hover)icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\咖啡.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Resources\脏房状态.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\经理部卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\黄金会员.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\内控部卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\检查更新 (1).png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\个人中心.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\常规部门卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\酒店部卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Resources\预约状态.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\picCustomer.Image.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\预约房icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\维修房(hover)icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Resources\转换.ico;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\系统管理员.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Resources\picLogo.BackgroundImage.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\可住房(hover)icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\close.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\早上.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\arrow-down-b.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\钻石会员.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Resources\已住状态.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -292,21 +175,6 @@ ..\Resources\复制.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\已住房icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\预约房(hover)icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\监管小组卡片.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\维修房icon.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\picExtend.ImageHover.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Resources\账号.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a diff --git a/EOM.TSHotelManagement.FormUI/Resources/arrow-down-b.png b/EOM.TSHotelManagement.FormUI/Resources/arrow-down-b.png deleted file mode 100644 index 7eabdc7ca4b00a854b670f4e02bdfd7b849ffd4f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1706 zcmbVN3rrhj96#J7$|Kq0#^z)3a+oNV>pl9S=eh+c(&AbPR46)<9d{q)Mtk3JchHAf zWT^20CI+_z=QJ4I2y>8t1`WnAF=LV$NtS?aAc-!S%w@y5MXgz{%_bQ%x4a0KpGp;Ob-~Npl zw)(sj2#p&FtXr_)K%EXA@ULXcWq*7+DIYlSNeZlDROr05cqaf6X>gl)Qu zK%S-~M3fAztfj+*0!GDng<{OKAt?zIg$zz{U=22f~yzKo4q`Vxs`OlW#}JCczO$Su)YAg%za8fdUh6+n4AaGTrLNL+_ zL?XQ{-Ejm`w9#gONdF_Z(6r@)Dy@XsPuj`XuYu%^TKkb~F z9lhwMg7mgCV~=am!KKAR-@e4N(W%z=vx)BhGr@1%#^JLDSiQ2MFpG64#)tn!G z?2AvqhS^=%+j~FMKe#$Kb9Ub;Sf}nW_a!9sHOLjY*fE|6@(wq~)9C{nrVi obR_szals>9cTY8Jp4`#-H%Kp1xc~qF diff --git a/EOM.TSHotelManagement.FormUI/Resources/blue_refresh.png b/EOM.TSHotelManagement.FormUI/Resources/blue_refresh.png deleted file mode 100644 index f12826d742262b64f217d8cc273420a4e5300ebe..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 555 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 z 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 z�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 L{9CE*`0T#`7H6Kl diff --git "a/EOM.TSHotelManagement.FormUI/Resources/\347\273\264\344\277\256\346\210\277(hover)icon.png" "b/EOM.TSHotelManagement.FormUI/Resources/\347\273\264\344\277\256\346\210\277(hover)icon.png" deleted file mode 100644 index 2b12319437d589743210f84777e7de6557b71612..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7806 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 COmzzY diff --git "a/EOM.TSHotelManagement.FormUI/Resources/\347\273\264\344\277\256\351\203\250\345\215\241\347\211\207.png" "b/EOM.TSHotelManagement.FormUI/Resources/\347\273\264\344\277\256\351\203\250\345\215\241\347\211\207.png" deleted file mode 100644 index 3d5c1f1f5a0fe165f8202a8880045944e216801e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 55256 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 loI<5!r@cQ>-FSH~ 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 F{x8b!^`ig) diff --git "a/EOM.TSHotelManagement.FormUI/Resources/\350\204\217\346\210\277icon1.png" "b/EOM.TSHotelManagement.FormUI/Resources/\350\204\217\346\210\277icon1.png" deleted file mode 100644 index b2435f604db4ca8321d41552d7dbd1a6d508fe7e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4871 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 diff --git "a/EOM.TSHotelManagement.FormUI/Resources/\351\205\222\345\272\227\351\203\250\345\215\241\347\211\207.png" "b/EOM.TSHotelManagement.FormUI/Resources/\351\205\222\345\272\227\351\203\250\345\215\241\347\211\207.png" deleted file mode 100644 index 4b16ce1072261f11fc6fe938a7687574384671fb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 53948 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 diff --git "a/EOM.TSHotelManagement.FormUI/Resources/\351\222\273\347\237\263\344\274\232\345\221\230.png" "b/EOM.TSHotelManagement.FormUI/Resources/\351\222\273\347\237\263\344\274\232\345\221\230.png" deleted file mode 100644 index ea26dd214b05492bf0259effc237a6eb4c2bc496..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12504 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 diff --git "a/EOM.TSHotelManagement.FormUI/Resources/\351\242\204\347\272\246\346\210\277(hover)icon.png" "b/EOM.TSHotelManagement.FormUI/Resources/\351\242\204\347\272\246\346\210\277(hover)icon.png" deleted file mode 100644 index 7d6ba1e80bb4aa9899257ca905fe367776da0897..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7636 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 L(I7|v*y;ZR(aql{ diff --git a/EOM.TSHotelManagement.FormUI/Services/NotificationService.cs b/EOM.TSHotelManagement.FormUI/Services/NotificationService.cs index 369689a..3ec170c 100644 --- a/EOM.TSHotelManagement.FormUI/Services/NotificationService.cs +++ b/EOM.TSHotelManagement.FormUI/Services/NotificationService.cs @@ -1,12 +1,6 @@ using AntdUI; using EOM.TSHotelManagement.Common; using EOM.TSHotelManagement.Common.Util; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System.Windows.Forms; namespace EOM.TSHotelManagement.FormUI { @@ -17,7 +11,7 @@ namespace EOM.TSHotelManagement.FormUI Modal.open(new Modal.Config(null, UIMessageConstant.Success, message, TType.Success) { Draggable = true, - CancelText = null, + CancelText = null, OkText = LocalizationHelper.GetLocalizedString(UIMessageConstant.Eng_Ok, UIMessageConstant.Chs_Ok) }); } diff --git a/EOM.TSHotelManagement.FormUI/images/blue_refresh.png b/EOM.TSHotelManagement.FormUI/images/blue_refresh.png deleted file mode 100644 index f12826d742262b64f217d8cc273420a4e5300ebe..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 555 zcmV+`0@VG9P)Px$;2FbsvCH-SkC8)SnflN2V2yFoT+n51l?qS&EvEL$RX9Dnd# zesCoAC+X?Q4liEr#pmM<@Nfp2o?1A3#L^uA>;PP+hwu$x96HCpP0I|>^mKy5muXkP zgK)Nhr~pk*2RQUGQsepYH9|LZ&euMw0>s0A9y@jQwgOQEs2o1mn(I8q<5&lrsZTLe zgyYb;`Q3z21ZaBN-8TEpA`f*v)iM%A%35Klc`-CYWa2CVD=OHMmB!O@zj0{YQ3FWoKeSFYt3|}zJ*oKWlwQifT7a2wls2?NOxduM zK($k$12p@-3;SszEEp2ACS4`9A&=Xoa*Hmei7>WwYR@Y}D;d$c6I2T>!6d#Sxam`@ zSad~By)c? Date: Sat, 6 Sep 2025 14:26:24 +0800 Subject: [PATCH 14/15] add submodule. --- topsky-hotel-management-system-web-api | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/topsky-hotel-management-system-web-api b/topsky-hotel-management-system-web-api index 8d07e65..ccf133f 160000 --- a/topsky-hotel-management-system-web-api +++ b/topsky-hotel-management-system-web-api @@ -1 +1 @@ -Subproject commit 8d07e6522dab3b89d44ddb42b42d8a65f39ad085 +Subproject commit ccf133f885049974dd3cc5078406ba4d13eb42db -- Gitee From b20e1b6f37b94f7a08bee365787f62abfb92eaaf Mon Sep 17 00:00:00 2001 From: ck_yeun9 Date: Sat, 6 Sep 2025 15:59:46 +0800 Subject: [PATCH 15/15] fix form. --- .../ClientEntrance/FrmLoading.Designer.cs | 3 ++- .../ClientMain/FrmMain.Designer.cs | 3 ++- .../FrmAccountSecurity.Designer.cs | 2 ++ .../ClientModule/FrmAvator.Designer.cs | 2 ++ .../ClientModule/FrmChangeRoom.Designer.cs | 3 ++- .../ClientModule/FrmCheckIn.Designer.cs | 3 ++- .../ClientModule/FrmPersonnelInfo.Designer.cs | 3 ++- .../ClientModule/FrmProgress.Designer.cs | 2 +- .../FrmRoomManagement.Designer.cs | 22 +++++++++---------- 9 files changed, 26 insertions(+), 17 deletions(-) diff --git a/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.Designer.cs index 5106074..7c931b9 100644 --- a/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientEntrance/FrmLoading.Designer.cs @@ -126,11 +126,12 @@ Controls.Add(label1); Controls.Add(lblTips); Font = new Font("Noto Sans SC", 9F); - FormBorderStyle = FormBorderStyle.FixedSingle; + FormBorderStyle = FormBorderStyle.None; Icon = (Icon)resources.GetObject("$this.Icon"); MaximizeBox = false; MinimizeBox = false; Name = "FrmLoading"; + Resizable = false; StartPosition = FormStartPosition.CenterScreen; Text = "FrmLoading"; Load += FrmLoading_Load; diff --git a/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.Designer.cs index d8e1450..ff1693d 100644 --- a/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientMain/FrmMain.Designer.cs @@ -296,10 +296,11 @@ Controls.Add(pnlMID); Controls.Add(picLogo); Controls.Add(lblSoftName); - FormBorderStyle = FormBorderStyle.FixedSingle; + FormBorderStyle = FormBorderStyle.None; Icon = (Icon)resources.GetObject("$this.Icon"); Margin = new Padding(4); Name = "FrmMain"; + Resizable = false; StartPosition = FormStartPosition.CenterScreen; Text = "TS酒店管理系统"; FormClosing += FrmMain_FormClosing; diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.Designer.cs index 3b88876..9dd8d60 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAccountSecurity.Designer.cs @@ -137,8 +137,10 @@ Controls.Add(avatar1); Controls.Add(btnUpdatePassword); Controls.Add(txtNewPassword); + FormBorderStyle = FormBorderStyle.None; Icon = (Icon)resources.GetObject("$this.Icon"); Name = "FrmAccountSecurity"; + Resizable = false; StartPosition = FormStartPosition.CenterScreen; Text = "FrmAccountSecurity"; Load += FrmAccountSecurity_Load; diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.Designer.cs index 5dcff2e..f97042d 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmAvator.Designer.cs @@ -80,8 +80,10 @@ Controls.Add(ucWindowHeader1); Controls.Add(label4); Controls.Add(picWorkerPic); + FormBorderStyle = FormBorderStyle.None; Icon = (Icon)resources.GetObject("$this.Icon"); Name = "FrmAvator"; + Resizable = false; StartPosition = FormStartPosition.CenterScreen; Text = "FrmAvator"; Load += FrmAvator_Load; diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.Designer.cs index afb7efb..d99f2e2 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmChangeRoom.Designer.cs @@ -109,12 +109,13 @@ Controls.Add(label1); Controls.Add(label24); Controls.Add(ucWindowHeader1); - FormBorderStyle = FormBorderStyle.FixedSingle; + FormBorderStyle = FormBorderStyle.None; Icon = (Icon)resources.GetObject("$this.Icon"); Margin = new Padding(2); MaximizeBox = false; MinimizeBox = false; Name = "FrmChangeRoom"; + Resizable = false; StartPosition = FormStartPosition.CenterScreen; Text = "转换房间"; Load += FrmChangeRoom_Load; diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckIn.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckIn.Designer.cs index 317434d..5464960 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckIn.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmCheckIn.Designer.cs @@ -307,10 +307,11 @@ Controls.Add(label19); Controls.Add(label20); Font = new Font("微软雅黑", 10.5F, FontStyle.Regular, GraphicsUnit.Point, 134); - FormBorderStyle = FormBorderStyle.FixedSingle; + FormBorderStyle = FormBorderStyle.None; Icon = (Icon)resources.GetObject("$this.Icon"); Margin = new Padding(4, 5, 4, 5); Name = "FrmCheckIn"; + Resizable = false; StartPosition = FormStartPosition.CenterScreen; Text = "房间入住"; Load += FrmCheckIn_Load; diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.Designer.cs index 6509eca..507d2a8 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmPersonnelInfo.Designer.cs @@ -248,9 +248,10 @@ Controls.Add(label1); Controls.Add(label2); Controls.Add(label16); - FormBorderStyle = FormBorderStyle.FixedSingle; + FormBorderStyle = FormBorderStyle.None; Icon = (Icon)resources.GetObject("$this.Icon"); Name = "FrmPersonnelInfo"; + Resizable = false; StartPosition = FormStartPosition.CenterScreen; Text = "FrmPersonnelInfo"; Load += FrmPersonnelInfo_Load; diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmProgress.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmProgress.Designer.cs index 319a074..8068461 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmProgress.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmProgress.Designer.cs @@ -50,7 +50,7 @@ BackColor = Color.FromArgb(235, 243, 255); ClientSize = new Size(155, 110); Controls.Add(spin1); - FormBorderStyle = FormBorderStyle.FixedSingle; + FormBorderStyle = FormBorderStyle.None; Icon = (Icon)resources.GetObject("$this.Icon"); MaximizeBox = false; MinimizeBox = false; diff --git a/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomManagement.Designer.cs b/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomManagement.Designer.cs index 323a5ca..b8b3023 100644 --- a/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomManagement.Designer.cs +++ b/EOM.TSHotelManagement.FormUI/ClientModule/FrmRoomManagement.Designer.cs @@ -58,17 +58,17 @@ pnlRoomInfo.Controls.Add(label3); pnlRoomInfo.Controls.Add(label2); pnlRoomInfo.Controls.Add(label1); - pnlRoomInfo.Location = new Point(2, 312); + pnlRoomInfo.Location = new Point(3, 273); pnlRoomInfo.Margin = new Padding(4); pnlRoomInfo.Name = "pnlRoomInfo"; - pnlRoomInfo.Size = new Size(255, 307); + pnlRoomInfo.Size = new Size(255, 346); pnlRoomInfo.TabIndex = 72; // // lblRoomState // lblRoomState.AutoSize = true; lblRoomState.Font = new Font("Noto Sans SC", 12F); - lblRoomState.Location = new Point(108, 277); + lblRoomState.Location = new Point(108, 173); lblRoomState.Margin = new Padding(4, 0, 4, 0); lblRoomState.Name = "lblRoomState"; lblRoomState.Size = new Size(12, 17); @@ -79,7 +79,7 @@ // label11.AutoSize = true; label11.Font = new Font("Noto Sans SC", 12F); - label11.Location = new Point(11, 277); + label11.Location = new Point(11, 173); label11.Margin = new Padding(4, 0, 4, 0); label11.Name = "label11"; label11.Size = new Size(88, 17); @@ -101,7 +101,7 @@ // lblCustoName.AutoSize = true; lblCustoName.Font = new Font("Noto Sans SC", 12F); - lblCustoName.Location = new Point(108, 79); + lblCustoName.Location = new Point(108, 53); lblCustoName.Margin = new Padding(4, 0, 4, 0); lblCustoName.Name = "lblCustoName"; lblCustoName.Size = new Size(12, 17); @@ -112,7 +112,7 @@ // lblRoomPosition.AutoSize = true; lblRoomPosition.Font = new Font("Noto Sans SC", 12F); - lblRoomPosition.Location = new Point(108, 211); + lblRoomPosition.Location = new Point(108, 133); lblRoomPosition.Margin = new Padding(4, 0, 4, 0); lblRoomPosition.Name = "lblRoomPosition"; lblRoomPosition.Size = new Size(12, 17); @@ -123,7 +123,7 @@ // lblCheckTime.AutoSize = true; lblCheckTime.Font = new Font("Noto Sans SC", 12F); - lblCheckTime.Location = new Point(108, 145); + lblCheckTime.Location = new Point(108, 93); lblCheckTime.Margin = new Padding(4, 0, 4, 0); lblCheckTime.Name = "lblCheckTime"; lblCheckTime.Size = new Size(12, 17); @@ -134,7 +134,7 @@ // label4.AutoSize = true; label4.Font = new Font("Noto Sans SC", 12F); - label4.Location = new Point(11, 211); + label4.Location = new Point(11, 133); label4.Margin = new Padding(4, 0, 4, 0); label4.Name = "label4"; label4.Size = new Size(88, 17); @@ -145,7 +145,7 @@ // label3.AutoSize = true; label3.Font = new Font("Noto Sans SC", 12F); - label3.Location = new Point(11, 145); + label3.Location = new Point(11, 93); label3.Margin = new Padding(4, 0, 4, 0); label3.Name = "label3"; label3.Size = new Size(88, 17); @@ -156,7 +156,7 @@ // label2.AutoSize = true; label2.Font = new Font("Noto Sans SC", 12F); - label2.Location = new Point(11, 79); + label2.Location = new Point(11, 53); label2.Margin = new Padding(4, 0, 4, 0); label2.Name = "label2"; label2.Size = new Size(88, 17); @@ -181,7 +181,7 @@ muRoomState.Location = new Point(2, 4); muRoomState.Mode = AntdUI.TMenuMode.Vertical; muRoomState.Name = "muRoomState"; - muRoomState.Size = new Size(255, 301); + muRoomState.Size = new Size(255, 262); muRoomState.TabIndex = 96; muRoomState.SelectChanged += muRoomState_SelectChanged; // -- Gitee

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 diff --git a/EOM.TSHotelManagement.FormUI/Resources/picExtend.Image.png b/EOM.TSHotelManagement.FormUI/Resources/picExtend.Image.png deleted file mode 100644 index 149be74c24104ea6cbc596a7341f147ae17036b0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3561 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 diff --git "a/EOM.TSHotelManagement.FormUI/Resources/\344\272\272\345\212\233\350\265\204\346\272\220\351\203\250\345\215\241\347\211\207.png" "b/EOM.TSHotelManagement.FormUI/Resources/\344\272\272\345\212\233\350\265\204\346\272\220\351\203\250\345\215\241\347\211\207.png" deleted file mode 100644 index a70a961d8a73985576291caa3336826a2c1c33a5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 56414 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 GasLAd=JL+~ diff --git "a/EOM.TSHotelManagement.FormUI/Resources/\344\277\256\346\224\271.png" "b/EOM.TSHotelManagement.FormUI/Resources/\344\277\256\346\224\271.png" deleted file mode 100644 index 40df4c0e1029b6f7e396dceb4beb00d582803df1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21266 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 diff --git "a/EOM.TSHotelManagement.FormUI/Resources/\345\205\263\344\272\216\346\210\221\344\273\254.png" "b/EOM.TSHotelManagement.FormUI/Resources/\345\205\263\344\272\216\346\210\221\344\273\254.png" deleted file mode 100644 index 195624fd05c5a0067c266b9ae9548102e2ed69c8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 820 zcmV-41Izr0P)r4FEa=BIjx8YtK-*PB^!ozr`re6ba7~aO^<)GK`6?Wkl{91lL2FKz| zoP%r2@9*MD{4)h)4#0JIwQT$hTaW`=B!KV3`9=A9yf(IR3cy-?(7ScO9E`+h=Z$sv zaCpcVfaN`xZN`HY%O~J({63-gK<|u%^xwYT7=TA`cX9ds72{{%>!NcBc1-9$R6_D7 z?wJG7#XT{ikKa^_u zBZ_?hS7BRO*EHO|Q;7$@#VZYaw&Lot-W&pW0-Mm1czs*vVSnja`en*> zBR18O4p)VCZ&6Ts*R1~42+Avt`=52q+upAUu$)`-cJ{jRd||0pk&PynqMRa$pQdLJ}ZhOD&R~5W}NX{9piNPbgb%n5Ws< yj*g*; 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 diff --git "a/EOM.TSHotelManagement.FormUI/Resources/\345\210\207\346\215\242\350\264\246\345\217\267.png" "b/EOM.TSHotelManagement.FormUI/Resources/\345\210\207\346\215\242\350\264\246\345\217\267.png" deleted file mode 100644 index 51e1b2e9fecd6d799a3659f2dc4976173c68dba2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1049 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 diff --git "a/EOM.TSHotelManagement.FormUI/Resources/\345\217\257\344\275\217\346\210\277icon.png" "b/EOM.TSHotelManagement.FormUI/Resources/\345\217\257\344\275\217\346\210\277icon.png" deleted file mode 100644 index ca1dae65d35036c66f7f4572dc8b4eaaff6f2b64..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4772 zcmcIoc|26>|Ch3aQlco_F_h?z+01&4r5RfqWN8m$<_u$*nPvu)B_t6^Zk7;PN|umx z5mDh%ib5pW$(prGO67O7-TVE%zTf-1zdwHSdYyBg^E~hK{=7fS`8?+}XRR$w*GX-a z5)lzuXKqHZ0k6-&LwkcLc$UAd4}h1oT(d)b5fSN4E5|C4q|1sTBI1E8yMuy*)V)MH z$5V&K;5Y+1LQgJ;77@`i5OQgBcR&Df23%Nd5_G!a9u&f2ke~-JR0Nev23%QYzC6Iz z*V2ye>rN*ypa%L7Js}Y!@B{=jh|tr6%_j;;&@a41aJ(`NheEzU1nwlL(TYLHL8>)` z%;5nLtPTQ3M<6f|96<+()x{7HKSNLm6atP!!4U))5=q41h`PFvZ$Bt#jmKaTZ73$+ zY=L(qsH;H0CBor8K0Z1=XdMpE1&$;T2yg@njzYme1dM-zEuaZuY`*$;1`5EZ^H^K~ zi^GPjFw&ekUIG#nRQlBgPwo#|Hve0gz<|MpG%g&egIICtJCI8Kd#I=94>Vt3>0k{po=XmkxfU!5g7N~zW#&zWgIDA*mf6?}1`Ck+==syf{y?7p9!o#4$ z0S~|vZ8EU~y;wk3wU==mMXoaOhqukyv^D zYuPe5bdcjmG>HhDE(1ltFkn~=o&a;k=+a>X1_lpfqHtIS4v$9@FwWoEtavQ&&7pbx zm32iG17u|45Oh3~pbJAX(F_<9&_%+WaZEalNkF1>nMelS8AFFc{kHz z`3mE6m;xUf4={28Q}Vx7A^g9I=hM9ZUiv?)kpD;N-@;0FrLkQAu*1TkE6%`IdePUU z!2dm8e-?%vAQbGSod9_JZ~pJ5x%?T4KXG3$mNZYWPF_bB4pl}EhlBn6-_}>i{<{7{ z##d7KpYVS%`$g$ry6AWDU~66({@4@1n;*Lhzy=-VfqOjO>J$CsP8g z?OrI<8&o{5mNGMZz7t|})hXQk1|UPfY7X04&kR3I4sW(&oiaPOJxh*m>rNftK&93Z z&6MkJZ;T?JBPx+S-CAAE>MpD^W}KUXe3lFqe_s^m`1qE=hx%iaTRVW@?$<9qeeBok zshI8wDP9T~N#*w##l+BlbGx@28e?W6(-4d`1P6DcRXs;H$ZuLo^NL>9^XZt<&fMFcpWASDHeRnWN$J{fbsCRTpfkH(Kh*(3 zSTm(p(&u@}+V-f-{CsFa-z%}&)f;48Ee?=v1rC}=8yh}kR6z(GI61)CEU@u zi}c~K^oFbCtc+*a7DQi^go#x7)AR3#a64sBXJ^BX>o0CJu-HB7+_=}h$i`*oK98GE zKF+ALeJo$Txqj4S(J~=>PqMR|b7Sjnx7x)=huvqh4OJq}m7Gk3=~2}xnoQlQAbWmW z_b`OzYw_haumMggP4Rd;Bd2Z(N6nT}CYjW%Tnwrwj>)RgBMAuaE#Yc{WJohVa z>aE&e^uYhh#M@ehgBhX`Lg~IdmE5^3sUEdAStAGUIwa;AI2$;;y93Rf9LzlIwcGPe zFEO_BjC!}_<3@bnC#J>o(bL7+uj82cd^qn`kDL-B5EY*hbs?+w04)3M44xfwelkv`a&W6KQ? zf$E1Ou2##nausC6M5`hbbV47hQ=6aN z$@r-9jKeQ%tXZw5+f=D))in_w8#laZP}6n&p~zUQY~HYZl!@mbnesg!@%TA=mG{XD zlD)Q+fi9q!G1Q0ckNo`0n$P$Osguu`x~G1hYv7~@K5bhKuWpN?f4q+yzLSEu##>^Q z3Df7~Zr?6@JlFrAR`$k&leVSP*sU4vzJAm3)IGyhe7$U= zQ2SDU^r?aDGVh3SPk~=LDtiI1=w0wMxGZPix((KS1@FTopv3l4zfgF4;I`8vi$gN4 zi8rG@UGdC@_}f@f4sTD*bX4svo9(;)^7h&R^zW3<#xSoymrp&z(7-v#oSQ5!^;s1tn;(zmec zGw^R8&AxTU9f7W17{l%={4MLJ%IrM_6N8z?sE*Oh`YlH#tIjT9eDZz@YLRgl?-TD$ z-<5@SdK5Uj9`C-%ecyur$c|?Z^*Tk=v7H%<g@o1e#==F9SWd&HTo7HZrk(~g_lm8TBP zCc9e~W$DWi_X|74%@5R?EZJ3#Gd|tTE8L0h{Nx_r>iV3RtMdlg;JwSO-Rr8E`?*fA zO~q9VRJ>HDoY;5yee-Nvy7Y|);|&Yc2<68e1?r}rMQq#lNP2&1fwH^y+CmSr{ZGa& zkNL-yP_RiM*TV3Z#zJSJ^d-k@aY_C9$wT?`A*gFwDmO^-xUww)+KNv-QYA+)$?j@B zGhz3tZy(z>Tzv;aZFV}^PxaFfeRUv!U|$gB1E_a-?M1ZfVSJB9<(y42f{3Nie%jX9 z`f2`Zj<(#bMq{sMCiFmiK>-ox!t5e2OkqVG(x#vri>~U2 zv|aG@mHGgYlf|`(bvqDSCrWpl%Jwg;H8nyny@Xu4?4!Syy%P=#i6>$6Y(x@AZz3;A zyH`Y{j7+JNz980>hI#}g)im5#xV%*?$^>@3%AjROP6fg08q8uMt*>t5Zj)|%MU7cy z)xZNUQk5#yuDZp^W%zV^t4TU7JNAvo3^*EA%BWSW8WGzZg6okMWBvlwYOp1FTZxFC2uxZ5*dcuZsZ6&~ zW3@Xus`vP#XrW$998?UK-b zQB)_$jq}z9p)wQzX->|Q<%psm*}tENRFLL)a#HH9v$1#)#R8ge79r`t3^?rRr-+Y` zjo`iR^O*4Pikj(;P-xO9+|?9d{>Z5&Pvw&FI;Y1r`_6Z1qLkttn?I{pwK)5|dNq#a zK$9-@Xd}loomEW(ex1%KrATz1hf9F{Aa#^z5@@> zOu70%Ky%FwNoDLZ1$#apl&XIH}_;mWgx9^KK zW=yBd0|g;Qj8L z)fcZFU#oae`16)(n*z(=5|#6H(fX45(w$8~TG3ah>aSV`n;TmutlPXRqHWck_mk*e z~1Cnj3ycf)G&!C zhy#eAprVM(MnwfwoDl_y3W|WD$RHr_eyf^B6L(k8m+yV==H6WG?tRW4)?UMZ{nt7- zU*7i8lTSSR#Dao?lUrOCbSNnJ#o&U1WA6Obas1@G)q^+j|4tZmS@(*9f<_m}{~a@I zdh;O#1^0C->C~;VTbtI!sj`8M66vyJrqQs0gZS%$f+o#}4N9c?XDSPmnSLduP3vr5 zw5(2HNxEsBu67%(&7f%JijvE&F3)tlx^1V_)%{a`x=!0>xAWnh27d*UKlMa&lEb1v`|XZ>_XRXq&t@FYnK!n znxPfxMv>-+biLSii!H10@c-1|ZRP1~afcv&_+9*4(>hmFRt_pIDjGU;XrrNKqq6dT zMY`|%MVe7$7$N>5R584?GBGSvT5&=36M{@ds=Q=SWl33Sp*%5>EE`x9~qoZ9eMGf!Q}&TCy`DSWd>vh@{S5tr5~ARWl6S%_sDPlZ3AS_k39I_ zrgY>q>J)Mw#T_%{C5ZuT2MSN(g7fr);Z>K7dz9v_gXxFT9Ma1ifF zh+s9X!+Wa!K3-BjaA=}D!>k%5+6>fxrA`=26R{$KUb|Mmyp|Gsl+32U!@a+^ed zPCS|@Eh|0zC=m`OmHSa)tX;=K+tz|Qg>s>bWBgZ_OnF7s6*3H#l>2$^f(RFcIu&udg<$l-w2fwpz+dKR_5%5losy_N3O8F12 z+~K(nDytY=p8I>=Tx3^IC|<1{EYSh~_P1Pte&vaQ-%qsT6@x1|+Kz)VnRJ)LfWdNY z9M7?|BFDDP>M4f@Wy&jg)#1Oeet1Af_8~T`YCe&YM8)Ah%qgMV1llBq{l`Oe*On7L zJi#^@W`Rgl-CXGZx6`*VfXI^q)N!; z4{iU)fB6019TBA53ZjE6D$53T$dsltlD!m5`2ABl4o-H=q~z%NS@om8|Ka!Yp!j8gny4(fIyWgzyo~SFRki8}GYzI+ zUUArqi6r_R{-*&Y%`}d|k6OCz$2BXWY4IT9I7ZCW11s$6Zlp<(xGDT$l?Rj?VMNTp zi-+w(}}sR?!_J7jt7?JdWsRIr#WuS zwW40!kHx*XW;;$i?%6RT<^)=x8WFXeSk(3dRuYXkdJuMfmxbw$?PH7;BOGjBIOf?A zA01%00W0u*%@4Z~v}z=#8llH+BN{O@*VjB#(_?|jR#<^+Sp3{pjBw3J)bay2Vw$LK zHwg529QPm^3Hx@`Q@z6t^XqtEgl)%+cv>`KT0!7hZX_Nx;+kp%)7KqGHzJTyGlXr>=gonSc5pP(vrmh1<*5e-Z? z?mBuL(`uT&;vG@LvurOKb+uTaG4*iNx8fd_&^BU$6;+G~bSG~6M%?$JPTb(w0xuRf z;?W>t*{-QtM-X!zFL14JJgkTPu&&3vxZ!Dr9k*>itdL!uIKs07-*9w~Lo_0WrTI4V z^z67F)%73GO4mF`H`!3li8_%W%7 z5=3I*KyiY)7Ps|qJYbWf@u;RbW-M&_{9_PxEXP#bTHP>Q*K+wAgBL|j-F0GSG=>a& zh8>O=igg&W2s7&N=eA`=9L|{w;Bna_ZbVb)65a43+-&Zkr+L1PGLnm>yI~I<5%*Q= zF#I^1Wtv71iI^O==Ef{1Fm&`0w^?z|b<+vlSlo;ly2r&s6KR&m%|*3-Z*2GJgu407kvO$IuMF&M*eCvXfyaieq_O=3kNah*-FO?0%} zb(Dg`=||P?h$15vx73PQffIM_m~8}6+w(ow4*RNEAt1IJwoMNWVVQB=;uzy1igpa0 zq?(lo6GCg7F`b}C_dGL*+kqW%<4BFGIzbPWZaSue?iE$b9{Zk-m`5XC3~^WNl^3>L zJsLP@D#zEkL$P?w<{t8x07pSJA{vcYk*E=9G21~CMZ=D1@GAZj2`q)))x(ZqYIfY! zP(A#q=LU|ZTQ(x)VWw1?AJ z%BV_H>rvl}XyIrSkqEn5;6ywl8q*AJBZm`K>5_mm4`b}jh>l&y>9rXc!PV4bNW1C| z24Rnriu$hW#8Gap8#P@w=6T2`agS=Rg18v2;@epT8hjw$kO z-DfSH9(RlYqaM*&S0obg9EHW0%IYyMBCv2C`!shJ(o4Vatwi4Wot|@dMv+u~e#eSP>^4!MGSGO)Z95 zi<+2{s2&Szs5r&_FsxWiR$&u5VmYITx@DQ%TXrPy!iwGH8u|DZ=voJ-FJ{@XNHoBC zh?=aBz*Mmg*ToFFwquR(udsuL8})oEVn!@45F5q2*d+&L9meqr zD>Q?_z0jCw2-g4ushAa;9yg*sP5^p3h)3M85yeErVjk*JWjT$A zZ<$;n_ABgYuBD?Our+ZmyN;ezokt{$bBA+c#zBJOI%X8N+IBt64Jt`F0{_{!{BS%T zi*X)4_68LXM1dSe;|kd|qGC9F?l}fD7Byor2c;V2D19$xsyrDZD%*?W=VQ_ZFAzP2 z@8sam7{05}C73=v%If1$aeJJI$^Ub?Bv|IK7co@ph=r|KfUJ5xSIGCct`R*FxA5d5 zfE%jwUPco5*HYeCe<6DN)^c_#{j7{v08KqVzu za2-Jp2hoTga5v(38Qj-^7mKC;v6Pq^%15&T)Rbvyu?V6OA?ye+J0>B9;(nMKCe6p* zu=}{5Ml51Eanta0a6roqE2JF<1h@qQhJwfG2}iKHJ}zTC0=9)mrgmH z=i^DBRTcKbw8T3wIX!eaYE%>-@od{-eQTs$y7+yD>%E8^jIn`k_?7+r7Tbt&HAd*Em> z6D1wfw5Wqc!x?7-0NBEK^r{h2ZW0zI2<;^X4KX#)jDv-5M2D9z_Zb85$+0lIBdqu zm~R=Xb#UcOS0}uQgfad)MpOLjfG9UYK%yEE7mLJolGIG_b)B!bEzri~F#>*1*GD)bd2#MyN)Yq$xTi(atN zi44c@inxk9hYEw}g~XMLcX%Ke zu~Jh3&(df7x0oVyf$c(F2?h!44T!5=EGeSW$iN)OFmX3I-Zj{_1Oa>l1;g$mc*k5flP86%D)kWtJExJ!%L7;l^x&B40| zmBP&W1gpd)DoF&si4%0{Q8bAQoaTC_ZCY_a5!}D9!ppD%jR=-^xDgN~JVXqG<(epa z^dss{F{=P^wJgF1R&K|2%({)(MD-vR#T8IVdyKfwz(+9RmWJaHCsYqR2tF`VfCH#_ zM;w1eAQ&7CLNuHV?l^t`mKpawP@JI6F-0-SI(TRV)5W*4oH7j|1m3Y{N253^TG4C5T2| z9E29h6y0K})?r{#aV`;Ev>YHRhhu<~U{nac9pwm281B6oRumlWj24cW0m_6Uv;xJM zlaIiFMC=&3Hx_D;K_E%t5%GW_AaaVm!XMWCFz5&u3hRfD;es+n2tTzrmsc^u0uKYA z4Kxl6O^7}8!2tjoh$)$+Vgx3bn3*U5*P0j=_0GX~U=m@1WEF;tq5_36IbT;duz(i# zHtOL3a7M_1YE}TKF#-xbrUSux_*M>QVt{S~Vi|#QRv=d(3Sf3}!((V)2cyObqOxt} z?xJgBSSbr}l9-EFl2`~23ls?KL}77&JFro>!UO{nrUx#5tBGCEF>}5OnIPUJ;*4vc zESLljHym>qaOnd)e>PpQyFA%Nj}!PuY@fh@Py#!J-$THunF@Uc(1ErR$3Yhx3y_CG z!Rg0gG>~V7M@A^;*f9(`N&#snB=+NRpgHUh=VGhg!5zZsHeB#73||Z{PQqJocW|kg zuX+dI7N~SQ3exGtiJ}RJKz*X1`dAWOp-XJg4?AGyAYw%H0?_yf2S6!^A0nsNtC(rv zA%-L5P4F>+>IvnI2yR(i5DSHWWdp(C=5kv-%%2?z$33(n5wwZ3LC~XkN8EL}Y+^iI z+!2j*5ts>%BcPAxsqiaitKm%dmVeN32Vp%vXQVQQG%0TYT5 zulW&$RpVJ=J0cdxO$3kk#X+u>@K`OBp7BJI<4dHwwHFQRsHm3^T@s1U1$o zun5qJC>ICh#|i_eEB1<)#|-cxiRuMZG2|K>HnJa}Q5D*U+YD?)b^%P0qwu&A$O>a+Zqu9Dpt(Hcf42s^e( z$`j>`G7(b_e8hEB>@NB&a7cvewkL2R{y@wDkcx<)ptDsYKog>XvuInLr4TL?9JnZM z+y?w1)d(Ae7hD^wFB!oAi8XndVUqpxR5*hZ2OM*OgS|M17IyKl$zKXigb|FX@&-;E zg=0z56^9guJx1V+lE9U5u)wPPAm}gt7041HyhehB_&)~L2@-@cAu##zI$YETSUf2| zlbAvx1v0~+H(*P6B`QxJrxnLDM!FhJ3ql(KzlxBe0y;q9sp3HaEszp$C0vXsK{FW) zq>=~}$U^Ctu=5&T9~mqD9*b*}&XQmOe1>d}D*K90>kup2*eMi9%)zH)w=6l-xwq1~%Sc zON|Glis&KbV3l24fMhh4>mrFdTmYs?&Ozm0VU;0PpaoFOggSV=VKWl=Q2~5ogw={! zkq^RBqB%(s#%;$%(tUK5C)<;M0Hh(9rO7-OyS`tW!p7{)8p zBVZat*@BsnFc5V_?nJQ;uw(2W05|fEvx8c(aDQ-{1PiehdnI5dx`DV6$30455k|+8 z7{^5;&8doOeKa#f2{d{n@Ps?SCb0+-SaD?0Qs@$5Q)V6}Ar8TWy+sW=z{n(V4N!Ge z?#>4xAkKvG;sfPi6dd?bB3R4|_f&Bn;1;~V#9woX41J;mjbI*M!$eek6=vyM1ZxtS z3V==?11A8d6x@}W!K_k5cfL!QLKaykzloy8uz_BobHia0*ks**d>%eXFc}jJvB8Z+ z!Qsi+!VrpLqLo|&EDJO|$R07QE#MCmbE7(h9I|RI;DG8K9%(?}Uk*Kt8G&08jvB&` zVjHkTsuAc~6DA4}e#{3_6NQbk#%Pg1QfW9KDjTL6p)D|V)F)Ph7{%%NU{rvs3Tel! zKrP@D#=^k4I0~p9a03DhkOx9l#jIdNSq?EEXc2irlF3Mx8{_N(($9uM+H<@Gw$=h+ z62HwSQpKa>j(}LiRN6=K(`15?E|!Ze@Hx(ijT00md!WqfGa@FS1dei`qZo0jG5i|D z8MHB)MX?SrQ8)nHTSy`{kA=3xT_H1pkp_EEjKBiGh~lt_Y{`p}eFY8W@{Pf1cvZQvSldV2q_x!(8K@{mF&U{62wC@L}X~CBhFvihcVtfP9#XP7+ z5cbB{7JwL(AwdDS1~@5-9)+U3QE}2d0M9U$@RH)7P-sTZKTZOSOoGA=0#B2jfJsJZ zA4TM&NToO>=r1S}x+1P6rO&McD|f-Dp`j9Xk*XDcN!Ze=JSUDl(JO8aF+KhZVoXGv zBPT$HP)Z`9B3F(i3^x`CkHjwfK*Ak@6%r6pco`TNoX!X;5lRLQ14NfNw@)Su${APq zi4qJtXiogfh^fcOK?)53O=O`gaj<`U9^fkArW(H|7p})3xDnF=qT~GtilEwEFinCv zAapT19w&f1iWwBk8$}9K@9?l=9$q3CmjN_y#G<0&pm)IsP%%@Qc)?wBUETOvQbcpg<-%gB`t+Tm&CIMo*u{A zsn)@TBgseRJWM=`^N#re(ANxMHlkh>D<^7%uEXiZ!`u*)%Pki?X29RVtSh1-k}{-a z4Dnuxwz#rL3LH>Uim*+PX~jEG8_-*XI>(j@DTT~4lwn*`os6PFU*WAo{qu2sES5s5 zR!~IAb&^ETi3}C*_%C%JiV>2_4l^y&w?WKty$OsE6=HRuMNMI&;Oh`qgQ=0j3WL7k z#R6o=VsJ7Llpnt%BIzpOK89T)JKjdT9*3I@e1&+b5PI$s4iau#l+*&cmWU1|%yGi? z5+aG>9VDP2J|JDV-$eiD5*zu4+=$IpvRlZIx!bkzj6JMX941I4CK(6tBLD#s7K(MCN_1E>7I+wL zEWj@R5x@|XA!e!Ks0c(!fCwNl?gIo6iQEWzG(2~rZdE3Z2#w7Y8Y&(o+W78$o@MLxs@*_5l4!<-G!g zWAAY-QBFjhkY7MNF;)0u#7I%a{eYftq4yzmvt6VD00g4Ygu)ys+yoW(11}h00dxgh z06&z2z&s=Ml0CxAD=;!y^u@;~kTL)s@W_4OBfJTPE`dQs6cCR?Z-yyI1|8ld>~-!JxlUkY z#jLpnI@Bx7hV1TPeK!wBPVRJ|h65s-Lku>q3mg$gZl_OX*Njkzn zuqXZj`UaF)6h1HW~RN0OOJR0T7~G$m*eiL8?`( zVrYc~j*y8dn2B3N2{y0{PMi=*_DmLMq?M!Eq0h|amDNQb`HsMWhJK9R@sT8qOsiIlO*wTNpEnS;as{ za9hy5C}`p~(lXFL2t7!!;#>ZB1bB=j*6{K1#K1jJcRFqgQXe(2Y6|O&ok5q8EI|-a zzW~IbP^62vQd}}st&C(4p#}>NQz*gU;qW@piReZoUX|MhqJ)ZrL7-3s+O`M_c(1|P z;AMjyDb_)HU6_^3hFS*5wD=>85?-gk+=}ynEg679m}o|_itH6&Ev%YOKcp?^vAR8-D z5wx`!H=MXT0=t$xo@xY3*0F04(8YTN^vb282*`*SG=(*QDFEBYgH(YM!WJS#r=RPMvO(6>X47JgBXx_oNybI7kHe&PcbXJBv59u9oRs8OzaLoy@$U5Bm**{ z8i7{{n+DsA69AEnV9Fs8gmP*D!D?O$S0xIVt7_4LD(ZCI}uFkbl8a>uN-D5K!?y1h0dshBpPH|N`5>1 z5c0v2-LfUa&0Qp_1F}Wi37u874hldBeBocg2^KG0LLIaY)F?z>m774x0)R+m3aSRo z5A+z99S{}a7idDUSFpbf9Rf98CG0+sC32BC@+6J$M`H@P0-**FghUMJMj{wc983{< zshDX1PsKft5rYR1MKG0Y7<5#yP%aCnF0P5LIP(~sV)Uhy1`A&w1{pyGm1Lxx$)>BY zCCb>y({dM(4a}JiUO?&@vxN%A!BNeMI@*8)8jhv>VU)T~3@L6uiXL2DbsjD?B7`{H z4X{y?OSE{P(ts=w(Q{N~2Z=Bxu;mpTp8%n_@hC(9MTj4G&5HBD-LpygNnI802uc*X zEASMWnoF~VjaXEz{K&(Mh6#fk^9C#6B6fV{uu~hmcltU4p!wy9%ge^&^ zg4Okbeb@-78H)2DC?$)AdS~jeqM&c%RQgcvBxj*QAW0r$Ggt}hC3yos6Q3QPs>Lyp zaZuQE92{g0+NE^SMn+{TnL;hna z0kna}hSrs$5)z*HSpe?1OHg>E>{2lToDqRQP3aPlL)Ignz@^16L#e3P36j7EH0RNP z+qjlgq>!Hi(IU-_gQoEGQJogn08Nb_0HcgdiKL#HDX|-IiDFiG2f4lxP@H(KhiU}5 z15)Np36m7@AjXbh1t*NO6T;~~J1Yl0sR)UTKojsp2N zp>rTxfk1ZX1+X~8OBx<1MtC@Fs6ecsC@Yd)lyKl|VBRdKkP2NQJT2;{K*e%3HFB|t z6dcSnx{(qE#XA5LU}Hc7Akao?g@(qma7slaRs0gv02T(Jg>S$S(1i&83R(#Awy@X~ zni_zUqeG!d0XdlsNb8``pk%N`Vf89Uz=ewOP@;4q5xGw|%P=8Hz!FTTRt|zgfJc^$ zw5zO_>Nae2SXkb~yQ+7P;=;?5u$gNG#T|Ma0Ul5s7$*!o#a^*S^5xiX2PhwRor(hi zW$*=s{G_nwQo|vfT2ekzyG*e@`WnWW^aTSfR!KWtUoBTHDLiEKHIa8zf)|1~5FSP3 zMY(}3CHmysr49lxTXNz6PEhr+DhdyP8w3&#P@;(nKsbTe zxBwX7uvFKnW`)WZzA^a{;7uyrsosghilg8dx|n)aEDyksi6H6}V^bz3O(Af8kQ!Za z9_kKYK!%Q=O8OyUsT6Gj>G7AaQ(h?TrtOTCOr)Jm;>WwFewL9m+_Y;MAt}|9XJtak zbk+`~DYDIaR>DkX6_{5I&&p<;EX?qbm2$K4tYpYb>slzANtm=F(UJ+{sOLqx)V2~C zKa{i*NuK29_Ak3kxo6YT)7xMKao0ihdY}WFV>6Ahu z)N91xWKyXtE5qAmUKuR}eOC`9VCf45Je@HVvQopd=y9Ya?Nlh6^gP+GbjULjZYY`X z{A3ocYtlXH{i2M8XVFXUfAK6g6s8= zvph@A(X!H^44AB&^zEdPJ?e9`^^B9k9}l6(?ZflRy2wPM z+nz?`ZEj9ZRx@rW0bf4krR=P2r&16Kk6ON*Y$BOT_^FTuCsgK@2>E^@5z401h$~G1 z{fq*gR<9AOj-l0=mubj-WL|z&9tf@s9TJpBh3crEg#(;6$QQCfp3F#{!z=SZ)Hs_oiao0TTU1Hp@f#O zLTSrQnyE}yODB%{9C1KRGfkt)45MUT=$tG)DKoTZOr~)OlPY##4f{pNpeMPHsRSJx z*)Q%;f_9ln3|hucWchD}Pg29PQl4y=8G>PA$-L66(dKR^y@bK;1BNPmkG#*a{}<0n zx{jNsNHGL(a`+AHo`TrASNbPC^T5X*3|`$PwCZ5^*Ey_AuLiI(4*ipK=-Qr_$Kk ztRv6jKAKtd1VNeQrClTKDm+5lGwTuXqmz2AW-A-l`Tu)0&6R0OsSyhEi4bMv0 zK3zzemyr^=NAb`$EsYt62u+4J>t&DnZl^Lr>%uqjeU^7vPq;WJnFPc@uwMJEt?M6$yBClUP%izn0yE_l67c~Vk$*@m* zK{z)8&r)Zm2ra6H!DNP73#Lp|9S32CJ1Sfy^Z{k4s!F`vFp4ALlEF&>gydzUu7x%vlJHU5o58wMF-fZ4Mxu(Yhtd)SXc_oTikqdi0m)EW z?I_%#s$q13p&SI(9+?b6Eb|J&xdWiCMoKO?Ut8J=(0);981jD*p+m28dvx5E`UHYd8SvOvq@_ z@dV^2w>FBAz;xidA#mVTH4Wp>0Y_0G^khX!z)=7}g;EIJk9<;%!+@ix4}gjX!p3n& zNScA8fVshWQ#BT-TAOsaq<@&yD(7UqU)m?Qu*BpTp*GHo&pa2_QtbXHhv5c_Hx2HS?RK9&QTDK~)DY9v3v{Rr2g z7u7HfiYEjNNfA*i1R9>Bc+<%V7>c}|Du0z*8(S^?S}lMyy8G}p{tX5j%odk>BaCDqu^+$zZ!)%E(9E7bPXgd`GWKwFFB*n25Ho!LJEg~i82+j|P80`YcTGPcL zdr7S&dO>zjZUBTSBt-c1=ol5`nVTd`e;Tb&*h-6)+)g4KP^`$~37K1!)2bSVrUz_6 zPl-0?07(188AF}H=SDJXSQ}|~NRcEvNh`>(qZBToZNWmMgO&&~wIQOm$WN0Xg039Y zbOWHzNW(UpHUl}WjNR6-+|W3MPhI21AwfqCqc9Oz5IadC0A~_rjpWJ59MrHj8iSzp zA$SREP?Q2SOHv(&`68KDqcWGKxa3Dj5$5uBB*kIt!R>%%E3M`fa6|3@pmUJ!AsGiT zMRpRmjj|-6zA?pB_aj|5TnZDU zc)O;HgJ%(j763PiFyW<>QH0?m!(fOZA};hAsrXe@DCQ18(lSzO z3FQtRPHt^fY(OFaT!PY4lY@~3vP!0jd6Nl{0q_R!thC7&OaKbt9|98SikMfvUy_zE z4zGf^4{ZeZnG#h}FlZC08^VF32H?j_{C*@}tL(b)(#7~odXroaZJ+U2R6){_k=)TA zz7t$2m*A4#Df&UDi=1z^1o2=}5Tj85tkWeYj5`UT68f5oPj=*;PKrDTAhngWjSzTIl4Jwf9`T4! z&UOZWA2Sv;vB znXAAh5X&W;7Pm@@XjHv6j?6ZI0tB(17Og)~0@)MFSs<+u8_V8eN6^%?93vA>z>{a4 zu;Y+#sE9bdG7`E2o-EtV&*3*KyxHp6Qo;6f-w7p%GH-|;(2qpvLQ%nU@L{Orc&Rm? z3iNJFoOB9<>%~aiT0jvD5w(%Dc2oFpM`kN=4;>&tVybkmd{F{|F7*hsEK@1^??)1; zN<2xp`LULNU#UjB1;h_8o0#uQ31^%ps7W)cQd--YO!s+xf#v!!Li z&y)m636Nx{&4uYD78H+(8d~HRz5}%&c}~Uu+3%z$0=>7XQiP)@w~V+Ke+`B+*dbMC zdEN=20_&OM$4#T^22u!%9knIq0CO+$;V45>m#-Ufx!SPT(~3eB&hzG?}S(WGuMgE zpfwULQ1)hqT}&e;gQLwaImWR>^95?>Y~Wd zp+Q7zQob$RCR|NeIDB-YW=VkM3Ktb$7#gnJG8{if`m~Xxj~2dCo{`v{pEnZqZire3 z=jDxng8=04(c!=WeW4I*ekYcmt*H8@M^5_S27(Dd?&b2?DqdFg-il308wqlLX#@9$ zAWrxqZixDPoO`T!!pY;$1DJvi($NUk?N8H162pPzQHuOibrF^MBn9XML5ewNmFPjq zM_mZvr5auJU5_JcmBLvXd4q-L{4hSH0ofENL-0;8l|1_k7!JmWS%3g7p&4Q&pN^re z7`VEg$G0|$UFHS5tTC#zG*&6Y)EM{ zZMEoC3M7m{%yZ*t0EY^}?WDR*PDf%h8q44}3sWzy06dPolTd>ya_CnUwO&Mn(1O7| zK)L9=#V_)#lbA!2I61fw2|9W!O#4Uq^o3mZoIeImNp>(y?`b+6Qk0$NoghEZ2WiF( zp3OVM9Eq^asqGQstpeISvQAjs!Z(KaFSV3-3q<1V4rm_joAOCMC50R$1b9%#oMr)9 zh|!M>w2=l?svhCh?}XP(o}WH@@SStki5??#*N|4GSm%6xr}Vm{r=7H^+hSiY6z_51+ zK=7)H?<4Qzs?bs&IYknr&J3uF25Wo*kL@Lco#&l2=Omv3T>#gZ^CTT6{Vfn8B%WgB zd?P7Tl0re609CCMbf405x_(jwqUt7EJzH8yK^uUkPT2j^W-GlLctt=lC&?>L1-dsy zk$l*b5+PI7ulLA1Y1`$|$rE)ez!W<~u1mg8#&?CNA;}}RL=cc8aH3E@><}7|YCp1~ zlzIR@<YXD>IKTrThgW{vcmlu@a^aC&66fUootkhX-FE|FVw5-eqE3~2nR z>a}}hq%c!R$l(U@Ms~=R_CFXwGTU67JT@CdoqmI~L&4dU^OR2l@F@szXjYEbQ?n$H z1>rsT#hi%9kaUQHA3#kxcLy3ko{>`QM$ZeVCseG;eq?Vk4w9|r)8cf~W^bi> zT3P_o3Wt&%FkVj7E!&lu@mW*z~3!!=hceFE* zJ$)l&q*6`_mnGq)^1T~SKI0^Gh`tbZ;U>dR!|e#Apbsa>EILI>%vDM6GbE;MVu&|Jg4GO(aUY4`6F`;q^y){&phbROx<>#7!lHml)MrJ zR7td$pVh5`zzC>BRxf1;(3?<2r?Vi@e8pLCw`*%@gXiwBUSSfOvpep8yp zSFrGu^WgNpnaQ{m+=R5OA@o_38WR(ucG7^unbwn3zT`O>QXf*?Ej=1gx?p#4fE;DOT#s)s%w@8>@+Pd$na{&yWDR2N@CKbmABM+<&kAd-}uXEYcdKnofD!Vo+sZVtofbL3x4iMYF(uj zg?zG4q)*EBiSOj=mVB=wAHKkSAnKt(16or?;^G3CL3<-KCZm?eSE2DT!802y?WaZh zXv`-k87F|DGCYs;p*3?A#w1H}5j#cQfD*Y+C?SQay6)=x3E)IVj1CC&JILLYqmG`X z|1A6$z;gm$d{1Fs(jWwtCT^Ch$4&J+QRzQ(osb`MZ7}drp%(#tO7*lZ*o1s0BVR@g zGOM)N5N9e!Z~-rp@0a41@gXrXDK*Owm8lX_5`O;F{GD_?=8h45BdVf@fR*86;?&DW zBvfB}Ke9u-5ECkFuUuY>TTOvC&6((^&j#nQgaW7j%yq)G5>6-VsH%vawm;J66TL^- zn(7O1M`nv&m#C7^Fh_X-AmF}8+gZqZ^d8Bxw?t*|()a)zEm!5P2=_oprBH!{GnHo~ zA)vGbhul<^GelLx<)x_}1b669`9{)>i`KE^7jwB6%oiLB`Yc&4UuE_4=pk?$I^6JCiMYG; z`hfyPGX~mm)ht7#K&V;Ag_HcK_(O0G3G?agg-)VlK%S9&-vx}C_A*tOB1o?vC{n9c?AO#+cVTB!0NAi7KG>Z-; z|L3ifW0WcYqI&eCL_6fWY1RP$^>nc;|o?+9keI{AvKGSSnJr)3B6~}-xWjgZ)C*FJ(C*m*;=bb_Si1YBt;mCpx=Xoa)4x9>7W=Otx!3T8x^z zJhT1Jk%Ex&Ax2rkxwf^YWi8cW!NB(iH_$FH(90Qm5-}W|F&;xcZX(}q@^1Ty;=ig3+k0${2 zz^>Dw9H|)AM|Md1>C3kesNBolGU;5)7xm=htE3(C_?mpk{@>my6*??bzBwlzM84Vn z=SV4BI=Xd|9iagjghqOs3gW_dH0X{&`$TdIVAy$1B?6ES*G0ZACF_*NoHW*?y(8RL zzLt?^B;U9T$PZFhm$UZdK7iino&+gH+HU0=2^uf-ZsM?9PJnM*@KGcU|igi`*n`-&Z_zCdp zlpo5t)RCJ>3ydBLGi@F$%E?nw81X}$R8*eM7Dp2OniV!F8gxZjWm&})WrK=?vee*# znbOK|X)04uSyo=buX#b6HpQ2f$iENg-(_IO%vFc~X+TL~MP+PAWpN@^SyEQov`$50 zNG4t9@DEE$D=HH_t3}YXj!d)!@;z#Uls)YcL6vgU4EfG0ZJFqwha_u$_1K|TWOy99 z6gbllnOY~^fw*66Y7I4mf2jVmin46w&_sDA+>d!TtrJd{B{PMWSFflr+R-lTT2h)W z8(L94B6UTgv|lFOv`$f-qMBBbDk~k5DX;u~C4&;>iGi8QOnF7qI@$8FfrTXl6a6wp zR}RYbE37OlObi+{pd^)$EhrjNnr@V3p<7OS%EO}a4c}c&L(!_vj zeJ)SsQ{#LHg^DaVO!8S~aptAWln@*$tFPtcrm`f9StzNjxI9zdF)?t^fQ&-pH&Ym~ z|MH_BZmIGenPDZ_;uam-bsUt*q&uKUOZ$oO`A=ihj1TSnz~=w(u{As)_v840M8y?_ zRsUF0F1kOS7*LU^Q}v?`naaWC*cxm~?oZm3r88Kb!~Yf^Tzc5F{ri}7Y@}$x8x;;3?I;Wqv z?u4<=PxGFUEhddCh?j7acgz>6pSk%Z6_FBHnJ-(ASoH z_J>clbZpn+>dVH~{>#CCO?l<@n|8caZ~WqKZn<&k&Q&{F)ET~Et9fj}&KZ*~fAjHa zWBN=z;V<^}e=6^@;+&#c<=anP@wc)4TfMk*-zxAo7v3qXc zPv>raX4~FpntizH*SFOl{>?=*JG3A4Qey8jEnYvSpjoH)w$^^O;Hy4!yVSku!gEf$ zQ_)O=emcVpEtZ-tud_!U$&#q(#{jh-rdym?GBbPKd&X*WtbSeVGh4R5FxGj} z%746ad7Gy@jGNhMdg1u;dYPL?+&SbI?Y4Y(-1b`^8#m_t)g!u2IR3o$+S1;mhJTc7 zeQd#?lY?{TY+N#W-kYyKGveL`jVpTX-PwKS`itZ1ADwV=WN+am_x2mTc=6&2nE2jzqs$bx~6gepGPcu<%Male07<=V|?8mC3E*J?K$MM)r}`C?H0p7%iMTlX6Uv% z*FVv9$cRYYn>H?)xZ-zvn{1uD>i0LFwSBra_R0%d_WAa@5s%D#zu&cenw9q6)GWsC z-TrX&pN;E}PG5P!%GVY@w)539GS^@J&+8hWK48N|W|JPhdQ7jBjji2_LFtynq&+k@iT;t5p?HwNeNK!_djIjU54Nj6b!z)vPb{ljE8g|#AvHM4#eEPE8lXpCM{>2NwIp&7>A6|6Bb)zSb`10NP@gDtx)s??^bycec zkG4^lGcI+crP{w|!Wz<0C6xdSZOtO^XjT`t|h3AK19L-NsKJ z>b!U38R<)3oNjgbyjjTQf2b%({N${D$u>X?OP7V@|F!yyNKID>mIT?B3qL{iRX& z@@DSzjT8E%=Wp+@>*d!{K`dFQ};3dBOJfwT|CjzwS8i%lnTlSZ6&@+N!*5_KI$E-s$w+^UXUC zdTITvCSU!n)3VFA9eBN6;tAt|`8~!xcT2B|7NuLB+VS~YJ8rvLUyvHm>!aJ(8=o}J zTp8`~`hsg$Kho{`<&S+c>e+iTt^2JwqhZmCmqMFn+}@B|lpWSnvO z+nau$oiKIk*hN}V=H^#kfB2QBznJ^UIOF-$+zEA#YxCQed#-rqwX1sdb4Nc?Ys0P) zC(qe^cIwuf3&R(ejUK&f)7Wl3`gCzdwp_cjq*nBT6SrUer++T}VEVM)m-Kw@x#tT0 zvg?8^PoK6u)8O>_zk2)NsdhJ9p(iX`c;l24o=;9ZF}3NN z)^nC#>{fI+_}t_XkJK-_t@XSH9nY!%?(%caLQQ=>`qR$o2R47)W7x!A3zrN#Va?DF z%O`w3;P3A)IR5c(Pk;2h=j+}4cIm}^dyMaUch{v}(S`vp-`?ipXFe&tVbShZJC@)6 zhu2Pj?D&E|A9$$yjM7KGYWw1G9Wvd%IRD_yR+CvPADlYz>|2k0dffBN-w38o?{N2= zMz8n3wBBj0zZ|=9Q_nUFHq}}%efWYG=YIFyqdPt~$Bxj?da%QUnZH@__KlfY&o96I zjCW?W?o|KXwI^MlTySctxP8A1pUjRgT0QNl&>1gvSU0x++ndh0b;qmme!FK)n0a#j z_Xgj3ebfD!dP7cYJn*TWXDs{hm**DTck4|HXFq$*S*htCU3F2>p>EAeXYRh?&}FxL zu>3&w*xHp7%`+yJf3x(-XRhiua=zB<dOAJ@!THUIq`yE64x zZ`_z(oGyN2^T5x_XN?~5+1Aukb2rbOc-4Z%z54C%@mBXgJyX|Q5dCQLv{$}$*1qvX z^89s|OelMI&E(zpjaqU{!GX~afAG7}mN94B3q4o1J-6!@Z#8dt*69zn$(%HL!s>df zZyD2M=98;#7<1OS6JM-*;mr4DIIA~4*?Q&g_F5BGb*%sDv?ihR_DpI$CwYH*c#GvP z9AEa=xVO^|G z{OMuq&YU#igxX8boY(Q}Giqxa8=u>4$76cIePzELoH^rf9oBW(x6(Xu_qk)2?E3Sm zl|5hGbk(Ny7u7Co)c326Z!YV5_TYneuU@px-uZ`uKi9r$#*mq3O)9*6$L@w5I<>Fd zJ|>wAH*fUH2W!5&yKh0k&Uz2bd35xcS*K@a++KgG|H#U}-f_mBt2cFjZ1t}T3I-JL z%j+*MP4roDPf`7ahZ1YwIAL$)N$V~>zTny4$KIZBd(peiD;B&t@!k%@_9sxe7i=i~ zU1dSR_%qvgt-JKeZSi>zZQL~VvUg@RIRDW2w|o44&tH!zxV$vz-M#YZdBz2`TW+|z z`-B(e*MyyKU;9uEhiNGX~C(3GaoH^<-Nb{FkhOmbno0*QxDzn@kg^CKkwXv zg2F8=|LK>cTbF)*{m1>5J+kGKzGJ7nS9imebC+FQP|)+2&A&drcfXf@mAM)9HtB)= z=XZJh(4U`}Q6F3J?4AE?cOd-f66|?m+P5>eU%am3PjB3R{Kk7uZnWSR1&=TP?cify z`Q`ncX4W5daKF*M^BXTUuRpbJ@}Y)2^_2GR!;emA(D|a~Bioi<6`t_-W}RCP+BIiQ zzvBuDuKvrz=X9Dd>&?_-4Vw>b`Oc-y8oqPmw9%nw3ku$wb<@Id>cWmQ>o*_X`tv8& zbl&^Ij7+_!TeMgwzEDBa;O&!7E9!V|2XxAct@uHQ9z1dPwsB?iUikPqc70&5{=TpJ zWUuJ7_m%D!J=SFQ$^)k~T>Qo3BOYwK`j`Ta@iZ~M4ONL^7vWn4n6$bU(X+R_N_bay^ojQ@c5c~f9e0# z@*Wl0%6oRa_0sso-;ICZ@8@+Lw!im|SEqmc$t4;mUwqTTQE#7ho%vwxmA5asAM4(E z__t4!S6p|4l(buUj78>VDYj-Ic$-qru4i7fpX@LzgeUE?U|4%dus4<92m6 z7Zf}@ok!FLXnc6*rWq4fPwp(gAKiB4O9SJd@mu@U!3Qp!by@d^cE53ctJw=@P2D%Q z)9e-{5j?xUoDzF`*9jeGuC(uDZlhawYQO2`$6h}3f~nJ&G_wl|w1S%!_SqqBf!3+n zHEr3yi{D$&bHedc|1r1qy{8rz6bzbj)53ed8vBhg@9qm9+4BwAYsw=hw=!Dxy{60B zw_DsWfBl1-|CMO5v|Fe5=Jr3Qpx_xlSRday08i^BF++=YJk`2e`%N$RJFRtT(U((J zY)=$&A)4S%^rJG zzvlmVv~%T4i5rgp&B|5177xAsE=2gAn;zbO`O^1({alYp@Bd@t^ljgw&X?7@;q)8k zpVw*7s&kkBzVB77R#u3d{i)q=2e0{f%IMps-GBGuRTHK(yZ^f-?xtfO*}QvEX6P3U zBSoukx#qK*{DOklqrv)3T^c=k`{-6JX6-yMfBeX=?tOIh^?&`lxQ924!INBf=L^$0 zgV(PK)@SgnKit%E!^qxyXYRQ$b^7`t6Y^nc|pNnuIn)O;cuqgaP92Y(;L*f zZp6K-LPamX`s&J8+pKW!%*09|zgt$kmpxAUbhhCa6MiL$3Z?6PIbsHd+U zG;Z~Ya&8CjDBgb2@D;}y?|f8ey1INB8$=7~ej5 z;%a<|q8ED|nm>8*wC1BxOwTaN8WCHAo9g);cuTp=Nz|X!^2xgubk8} zcFUDJy3ZOhq~+e7B@32+)8WoDYM=Mz;;y*llUjC;HyCpDptdc?zSH^hY5%;*pXnXC zcEhMkH{90znK_?b+ql_7!K8!PFV343-h1IO1%FzztKHkPFZpA#wSJBLc!zr%PQ9o7 zs85gGG^N!eLq2GG!%+5b;KWy6zx>ql?u`~KzUw>f*~yESzHxP{c6DczZXV1tFW)ld z;JdFcnfo_nuV;s{2TBLG+3=^i@fW+TXuQB0(<8KC`AI83du?Utv~lNNKjoTEOAhIi zZXRePE<9_+XH(vI=AU??~ z-lkvwM*T0E^s!MgcBQ*z<-{{K-r4BoqTc@~o4>JP=NlH4wy)gtR~+``!I~xw`WHVoAXJNDfhO2zjEK|zi;pQ@WI{>)I!tso%rCKitTrQK6>fe z*DmRpx~0~raork~*6-WnA3Y~eEW2dIw3#E$eEIg#4ZT4#n0N-KZ~LZk-IlIz6nmz3 zs|GVRlr4Rr>sxE*{9*eIJ139L&RN!Y=Y4ge?;TU{c;^u>7Z2{U@cq!0FFtzEc(KoS z`&a&I@}3Uoo$=tHFYd&xU(;)B&pumGgKvwdq`owzIOtl5>i_L6n?AG-S6n;LBU$1w%ZcF_j*O6_~|;hwiS zADlI?4hy`JL7_Z&5G(YTs7^I39Wutzs<&RZJ%8ps$aTl##K*5|5`ESnooa$ zWDdEaQ?{~KHodspck`WI13ua`dHjs!13GUn-v3m~%z3vhy8F)6JLkQ4Qt_0cf!|(p z?&GO_^WJ#LO7H9UfQj;2Sn}4W9UIP_&@jGb@z))`?E2SLjk`8^^{&@`^PB5h|MunJ z^qC#T5O;L?d*(`;xWDzhy0v2+&TKI^_QHbJ&0f85f&ES0r@Oo``<<_5F70t`7jw>n zlI;st{buX=qnph+wf4aGulYs6U)tCM$97#dw3Bh^g%{k=rNgPECpP|IP_6q1;QZl} zXqUv-kDhQ!q(wYFrT6)Z#|=F=x7Ex?mJJ-fs@WUOXE&c+>x{B}*OZ-fzP1oI-3EjUrY2u=Py}$48t(tEudA&u4w`S~{dgrKVwKjbD`EbU zcJ2MrFWvsH&D(j(#HowZmpnPK+&^$ft9DnuHt*_@4KUfacAGNf*jJyq@!%Uf?znp7 z*A?d*YN=ChlyvrQOg2&m4dKRU@CcdjE}=)cKAd zY<;`#C4a+NbYA=Wwgb1EGq_IQ*Sl_AJ@|`ZhrWJ2F|zLakIgzE{q8H5lcl-NaAKd>&yZ+Z|`^K!k zrr|wr9eQ`z6aBaE-*f4CZ}tA@={e_~g3EDBNuy;${@HVFudaXn^87ol{b=F!ZO49j z^3cumUu?Ev-kyV>-S*k8A4Zl76t^R8VbiH)t(r!x*+&FZ^T~FCf|FHhe zc@^KDaoZWYdN?2C{_eI*-=6*as?VP~*!hzy*4*wU9@)2POK*4A`+d(^IHUh(e{6AR z)>WMz%bLBL*2S~;g7s~#)~CF=-Rk@K7X8|pS5ItE_nDb%+TJy5)Pf;HyRQE1&=rdx zo%rU=Ip@`8w!ePh%eqbOnf%Unx9=DGt|~jF-n+Z@9r$OriLY&ZU_<|eI3AjMbffGvMW~(F^WIj{3*sb&r2?ERe(>x6FBqB`tkp)FW$V zywP#P6-%a{@w+ddIJV%v^G_YT=JTyRn{4hf!W^||%?w0z&h-y3YJ18Ji>@Ad;>hbB z!@)XmGe2nFcTvUj8!p(rc441o+r~ATvSQxA7uVqRt@EqmFWj>4m77O=ePhwqrT4tL^@Yryef)Ix4cBbh z_c}A$T>Fjl4)lxec_cgMK)bhhPda$tu7$Th^wvGY(0Q^8O?SIj?%Dk0gai8u`@Y$D z?c#%Vn*Fgw@!f5=UQs-IS@%Vk{{6WY>ywvS={oa9%&M4k|0ip&KR9y#lvcOTd;Zs- zH$V5_T`#ujeC=7w9-H`P#gcEw|DX1)GpfnwOXJUi4Y8mE5D)?BRVjir!6;o?qI8LX z5Tpl$5U`?zh!UD0q4$!AG(%MskQ!v-#o4#>6Y*_&I3wF~*UkvAgaP z#=CRB+SiXPzK(=%7B6OM0tnC^x2aW}FL2p(twO5N$XaK8DSmM%3+|Q*hE{KGzXCh6 zUAIul&ew&f?lhA5LL}CgxDW&c<;j!yI+4v0`X_j#PrdK}fmaXjMd_>f^Ed-z={>3j z)oaoN4c`CsLDy-7@Z{6%^Cl8$_}D_2;^%+3ZiX8<@nX_wCAq=yYi)FW<$}GR-Zb4L zniq$@2fv46+EE`GLyWY4zMijZ7z13&_8q> z0l-gEe`sA_9!h6%r2VTR#-mds&#aq80l-861B{T;%@&}1OJt=5@Svo0D`b{{+#dd1 zSTcN8BPEjqvJ&BtTZR{C>}3aCN;;elf5~4L=>rg3)QdWi^B({=wf>tx<&(AV1yGAT zJb8{zzB2>?urA~s`fdja+gBY;(uh8OAUGCnV^%Oa5|KnZ?702thLUn8|OmjU~mV3{ws!3|@3 z&bWABj&VKQ1N*m_HK0m1X5c6>KObk9le|B*HtOax)V)f>uZ$Kx`JoQTUkRY}1YH^A z#OLGpxAQB&Da3!p3D|y#T>n!5|8F!L_Z@n4@p5BA4Z zHY>VcQ}EOw8!gJR0B3>6^I}q{=$-7g~zc;L(6azu7%JJV#yoERNhzl=@OWw!kQ+D*zAY_>yYB+ZFnN*r-9=45Jm zBw@4DPRalzpmUNroSW3B#b@UI&4_{0<`h+ZYsGQYBjIAH1F;Lh!G@%$-=X$YzB59Y9pe>ISsV)c<_9^NA+KDZIIixgV=+Z}+!XbsckAu4qPE zO0WA)ELGr(w!GAH+3u|V+XCD4UxtEeNeCPW09q<04b2INK&q(-Varyp$AgUegSa*U zU)YorL28b69pu2$?(D&~wHs9|bh`@)?^7aFjW5zpRdQbb21{}v2i*WBYmKZ5bRPnQ z0~s|AnD3uznyxVXG#h^G5U}^XLl2DMANWjG|7~>oxhf|jq$*T{lLxx~SZ^=qR9@^m z)W(!O0(4|;OJP&QY&e)c4g3WxAy6Da)e z&K>jchF%G|;&O{52KY8%-irKzZm${3Mu>(wS%o?%2eiVJB&h$nt;JI7rYpuCFaK?2 z=~u0y+nvn{gD zPzEI6n6 zC6iJHcV4a_*z(G%GF)CuI4SE2LuW5q2)U>@c*Y+XQog#kEE_4#8!AVWKm=TmG5nMl2?Gpx z+v*S;1{@d>#VlxmMJd^??}6;mIY+5ZZ-`7!Cx?!~@}+PsGvlKvDMVtR+q7>Bz1wP@!I5OSiynI6*M@`g(kqy24SQyFP4vvaj5IJR)_gL~ z_CrH4p{HxD-{=ui6WSBo z?(es{Ru`9*z>$p-PCDa|9QZmZsrmP-9hLfUO@}`z!})~UVa>cq7a!pZ2PNRunn(+( zCGKX1`{5P_uT~5&8y^EXu{r2;x2a-^V_`u$YX$%NO^SrnX43B!XE1-%5I(NS>5ONo z*p}S&lPcfLK%HHTmeho_OfAXG`d-0cjg41k zz;c-Q-8TwTnj=CNC8!cq^!p%Z)s<2)Pco)W;Ivh(pf@}YRsLZGp79+TS24d*N|_U* zLG@g5%G_O$)2}Qt@c4R<;-93E{VC#ixhy zYS!;U?h;n7oF|Y3I`+k5A*PjulQyvB$3Dluf{=sHB>*Jm!?eUwkOcYF&L9^@?{(;8 z7rET{_=JB4ZEWsUsBBMIhc@Ag68Oxpz$XWR)+2_cZpws%dWwS^Qm2f(6*({rXzd9P zAR=&67(g&*@j)U*<}Es{rKo7rGW%0O+kF0vfKBR;hP+-HEcxB%l?+`%RRWuVkw@7bBg5JF92iOdw=evcXF6J5t_!9Q^F-n%;V=)PUuq6dX?QW zz#R|JeuEQXa@uAm9=z=a2?$At7SEH?${8#p& zQH)zLBfun8JM0TT3O>v3SF7P|J)qon!yqefcwlp|y(;34vjOPztI!hwFhSB_>_zJg z#9~Spx_F;^UBl>oIhU045smK~K#fQC${hSjr^NNwFREhs_F+}L<-6e&2Y>Eusmhk40ro< zt=!Gx!IepwgY}`r^*~M-3FU2$&QBeaH>WdH!1LrDkW5$prB$>lL0R>1S&~}tL^ueR zuWak+LjE(tYwPkR0l3zru3iu96a6XK$M}n?DVy-c$%k)iRXfgi#ai{9`+E8rkyosB~A?mY%j5&_2i@m@#6RaDKnAF~ff_swY!vdC^M2xLm zf2X-f!7zM~#2P_h3*_e$Z--G&M<DO@pX&s0%{TZv+1o8$XF+8|-OD&xzxx7E@#TTm;_aZtR2% zSs6~j%Bbfx25!YADd^x4HhC-@PdE;;5wwcBa_OFg%+WavpQh72*!ga!<4sbnG@N!RJORSoxwhIcPx()-53j;PU)a0i4HvWl1Omkh;97@WIlbo^Q%L^>uFMwRejvKgM81jy@yNM zu7j)KTOrJ;%ImevDZ)0AMgN$gBPbwjCy7RX?NXH?#eN+7!q&i9eZ3S{9UN(5S~=J` zaCdO&?UwStuXF9;@(~8N(#Gl5l5Tr`L{_K@dX(FN_8tCw)7iRoVjy)vrZH^#>7-VG znP|Fp`6|C+QNNEY%lVN?iLESd+kNjyZ&5miI6Xyn*@z?t1%}}-btTRd(}NB_(T9nP zkJbkjE)usxCXlR&I%=O7bChUPEp0FSX*DeJnsmsk_=;BQYxh(^{$BW<`Lbybn>PEA zol*GxG!B~!=1z0h1vR~ypuZqSPB*5gfUCXj?(oUPz;LNJGJL5imw)ns`BH?xQZEcH9j7@co{j@$nSl-nT#h&3JrF&r>CNJ}k z1S(Fw({ZSO%85q9bRb-%UdKAw`K~0j5W+{)a(`JdcBt7aN%n+q7O+{M@HJCa^AQM5E8>w>X5Iz9O>l9x!2Vw#MJn6F(B?j?Ke6D z2_f`39Ce4N`y<_^+TPCnfl;AFWR_nfi?qHbcfET2UeU>Gfcy94jmSgsuigd9Tp|Tk z&)n+0%$y+Fxa|D&T#t=n%B6v(6sMeJJ-YFSv|&%CRZBzBZ_S7KNu?FaguD^#YM4p~ z%-_v-Kadq@O-Wl+?2w%K8=ij4^dLcDk$9HHR3!a6o6Oq1YEyZ!MkZ$WyyP)$|^F`cAC4x z6#(jY-TOes0yj`r`Nsd1B{%=exHxZb4@mQ_)YOn=T+_LZdqwt1Y6X0z`vqZ%RAL&l zCc4CKyPIE^(7YZL<)qzqAyGZW*2VtjYD>dtPn~0isfRn6`7tWRf<;1y0mlNroYAKW zuTTTw&A+fY($?kngR6w5vZ<|^U1(u%1}Bo=Zo|uu8b}#WUcP)f)30%YoQY!93#vKm zt;SduH8vDU_;&Eyz+>OY_48zKa+Mqgy-uC}A{Xjz{4@|$Vtco2xVCAF%C3#tC^V@w z%KiL#?$Bjp#n4ViMQUDrcFD1ylf_%U6ND|l34-uUu6^2DtP149L6fa0bxsa~-nBp{ zxb2eP@ARG3oP^)IcY`TG-rX*Y%G2BY!Lp6HYM0abk$a-kf-f})o9BI;zM-RySZdm? zTiV#JLs3IsLg46Cvw*Z@Pw5py;B@mLLIrG6>Gu2})zsh9I_4-ZFPvyaY2Mjw!Z$~- z+XV##Wghp|J7>VZF-+m?N2hQR;14f$+{O93}C1AcEK}9 zMP7_Tza*KLb1>qYW>sNmq`gt5N3m?6{QC7Sncl@taoOFA+9ejM>8ck*g?U)x2vq%W8&&m0ua~l(E{c2 zx2O3$_c`e;PnJT;i$^Th#&#EX`(1Qa6KgEZWDkoI_Z+TEk~Fbr-kL<-7Zn}GAwwBE z4lD-V!MA_1BjDPdEX|&wds3yDZ&f_HFx^gZ0BMXTYOeC9$d9Dy8E#pF_N}b2C;U)O zQJZTvqq@4;(nq<^)6A&Q`Gz!H^^EUCh57Zx21DNQ5Pj|tAIiP*g7M4M2}bLhir|^N z$jJo6ASc2?XQZ6H$N~Zj%fzhjjVaX-!_VUE<{jEw_Mm8_WdaO_&M8u=-K-NtNlfLDds;IJ` zTq>%%*-N{##;9%WT?5$X&p@Vmav~UumAAPVhj85rK`rhe*S|W20?T9zb`D6E>q;2z z`h)3o5(ake?|bvpI>EQwu#($trh=kEgUI%&!QGvgdWqGLVS__j;?-DND-ew;8hO(t z;=3+0<192;Thgmeu*_p!!|}-99-Pq$j$Un~;mDar%8l}Z55kPlrcH#xa0>8OdPORG zS41m}0LFUnZro=lNr?>ZtrdM8w|l zFTg>)u+WRF)yYzvNBDR0UiMgK)Kz4yd5J)KC-?X9trH&ySu)J>uoPm z#v=dHx`P|3+W;7}rtKgrBMPjCVhP)|y!-u}0c!)P%@~cff!ACj7AggcA+~~;xb+7(_hxNvPj7u98YJ1@qCkPTmD{q%JeOFvoaNLsTkieqD=xUcW*`9 z${=A50nhZ8Bnh(c;SGtYk6;PFKv9hOx9|M zF-R0^11UE8Dg&aq1_VP-Qe#fuIS}Pz+d~;jr?y7`;`K|))fjF!lIdb^P z&eRzn1vn;sRjau{e(5%EKrTQ{@2-JtROQ{H-d+XS zt`T#$zpp*ZONB0i@`a4Zx6~XIs?UB8omY?- zEioX#Wg<_CbvHXegUFY;=Xq#DupWW}=mXwF4J8@$`JUQQEgcO44knInHTtGly1N^? Y=UTC=YTPt%RKsO_&B6$O)%Edz0M#C!5&!@I diff --git "a/EOM.TSHotelManagement.FormUI/Resources/\345\222\226\345\225\241.png" "b/EOM.TSHotelManagement.FormUI/Resources/\345\222\226\345\225\241.png" deleted file mode 100644 index ae3efb12e7d9f6d6c9427baf6a9d84d5ba8cb13d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 835 zcmV-J1HAl+P)%5M%(OH?$V|k@AoQi^r3gxNS676n=N@{u{)r$60<~32BOwtjFC8> z38DZ1PcwDJ0L^_Hsb(UTtl26}p0ILBH>RH+X_9?IaHozZtglP(@_Y2B^0YK<- z2;zZd03PsEBg&^h82YCG94M_sJoXTv8xF17>?VH(*ssh1Xe&Z+-DPe7_A7S)JW8Bw zcn!id0KLaAI|9TA(3m=!wFueoc>(ZM0BaOfPZ%72(4G<~- zyrZCc?l*wmHbV{oY*J9I%y|^EUwI7R7J#47go`vDTHs!#4gyx~1Mo8nMsDT?@X41z zG-W6eLeTIwWnk|t_zKb0YQ94fAu0VIvtCtU{#_W(2is4_WS1M?h+ zmd$5=HdsryVZN1ecWDL0_(`~EJ=^=gr~vr@bIm)FfuaL&kJJPg)!PYV*fObzsWUW* zaMG8h3>g1+EY#Qr&>e`v0u6`16a-+v>yJ*m;ud!g7OABS*o~XZ{uc)`BruhmWl{hD N002ovPDHLkV1n!%Ycv1= diff --git "a/EOM.TSHotelManagement.FormUI/Resources/\345\225\206\345\223\201\351\203\250\345\215\241\347\211\207.png" "b/EOM.TSHotelManagement.FormUI/Resources/\345\225\206\345\223\201\351\203\250\345\215\241\347\211\207.png" deleted file mode 100644 index 7e6f811291b4b5920409c14c5359674cae2e9ffb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 54033 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 diff --git "a/EOM.TSHotelManagement.FormUI/Resources/\345\267\262\344\275\217\346\210\277(hover)icon.png" "b/EOM.TSHotelManagement.FormUI/Resources/\345\267\262\344\275\217\346\210\277(hover)icon.png" deleted file mode 100644 index 0c3a3049e17afd385282dd7af3175f5f8f62b322..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6682 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 MW1?Ml-ZAul06|2({r~^~ diff --git "a/EOM.TSHotelManagement.FormUI/Resources/\345\267\262\344\275\217\346\210\277icon.png" "b/EOM.TSHotelManagement.FormUI/Resources/\345\267\262\344\275\217\346\210\277icon.png" deleted file mode 100644 index d444ebb8f5c3c63ebc852bded823fdf7fb82ce72..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5294 zcmcIoc{o&k`yW&cLPAs+lWK}Fi!sb(-^ad|v>D?J!D{k_gPVP|8uR(PW@1Oi!0 zGBtbz1q%eKe$R130 zKrPUh1)?DkZM{Ginc@R*VeWt@jiCddyj=^2(L8kEdo--k)+{5yi)J3g1{{NIoG3v) z6oLm_PZy>gNCXLd0WKL9=u2mCh=Drr@4Q5CymA=@hkb`|eRSXkD+XaM)^;!>CL4g^ z)zC-^8m$4-B&cEVI1K_?6^2D)(I^ZSg(e^|7@~$I5r>2Q{J}wMY!52Y!PxYtE$~bS z?#1P@h$vJ*K!93+x*C)1iNX*F1QZ&J!eWsi0?FYqxa2@2gR|uqgE7FNuxTtVjmdzm zFp}Mweq0?msPu;mzO3K049?FmfdNAWl36H>8hXX0UqEZ?{|@!_{f*{uP5ePCKlT1w zVvZA!1)v-N4%3fK0ZjY>26xLZV=ONwm&x&B{s(Qpr~gTz2j#axmLHq`Jv<&16hH@j zL2eF+#eCPtA{wy)GMCAAVlwH!5@q+xA`FXF!@v-GXbcZ#0B6UFqMtVa#$+y_0|&E) zL87rpjD`~iM?~X^SS=N_77>m90ksC}z=O;s|2;6%gGS~39jLW6k;LF|$qWiWGS-2E zqSRcJINE{xZAkjFS22u-;14md7GFA(~0cbMti_Mlz1D_l+{jaPm zsyskOv<4ZE#S^GVss`YW#87c$Btc7)f+XOmSS*GL{x!*P*q?Tdm~C(&<1z`AnAXpk{>V* zlgbSsvjGE7FeU%93Q_+_JcsQ6-=+V(3i*GO{xhr;FEYau06Q!SzTymOr5F833hH0; z^=Dx?0fAgAG7n&Le)?}n_WUyvf8xGlY{7u{HgROaG_qT4}?o|Xia~JjVWY--Ma@w&vuhUiWZcdDgq6pHpaCePN z5#ns+b8mg8yy_79!E7f1em+s9RT~Gx(!4s7^$nAcCN72&t>(_X+^({C-IMyb?c&9Y zS5?Eq@4BI7;|&T+bLCDIbLLAo@5+Jp`h~bbn zPCYucdzX;r;W@+`bxGA4#8bJN^d)@Bc$|Xf?HD@mlhlM~+l3?or!XV~AzGVNm<4_D zY*Ru4GFMS;vOA;p0&nD2A>L#SH^WCdtTkJje7v9JS~h(u2eN5jW3XT?y0k0IEz#e3 zX4yVS-+ocW;f`9ija#Rv!9C4dH`T|%iSHvZyJYMbFW8b{L19DBuk$w4((?UWs!U#u z$;xxQsn8;RJab|E)~AYvw8yA-N%!?&530TBwj6!9O_(ycPQKrbiT%_N68Vg?`}(C}smWB;U=PB&;oj$G8xLGepyE#h zA5mu*dp=+WP3EWj><-)^2}k3T2PFWPer}D>LCmL*`G@th{riKNuP;BkpcmYoaN^L^ zGJardTuuMdYU!(!-7w*e5SUO|T`gp^Xu2{_S*OzWj-o8_8u|tv-5a!*W!Su6R@Wr{ zY(mLYA!vh1&@%eoYfeQ1t2Cm8z9k?JYNNJ*RDgJUk!Yr#nav|w@lM8_F>-d zKF^k>FwUqf$TSsVgDX>87v^cE>)rVvee4Tnp`A7RFCU%K{PO5s5U{INQocZHame{6nt zM}nVMY9Gmm4vlh+dd$d3%Ic8J5*Sc%IcR$d_x|*!!Bel!~NaVrlEbThc(q}cc$bIesRn^b(ultGZNY< za|fz2!W|3c6D^E|1%2`BuejBJNLLj;=@1yI+)=c1ODIxDf9Xj70uY^AS4fD@!H3=7 zBd+U>P+hjJ(4}}u$d#7>pE_}=w7L(=^=f$k z)5~)@Y=h`fvXH@QUdSIoLEFu2yYWpnDz2FUrGBnrlrL4y^Cz{+KH8f)a9W3UZ?Q4; zDnRNqv&O?`=hJL=JAV^6N?s&Zn(lbJL-`Gy=lpK!5;1aHmgI;)daqic{F2w!_=ks= zWTaA>W34cg+bm2%OeaTzL`&jl{3XJa5^9eK0s=k~tN0>nr`wc>mPE=fX8mE|wy*~l zfw(X2>*h;0-aaYouUgUP(K5Kf$5r(!>%+~nkz!rfif-siEI?qr2{7!ED5*D@KzaCR z*OQs`(8$5O+1J?_h-st0 zy!qDhiX>YlSrPT3C)RaWzPivmzt4p&yP(F^T`I-}N!vecqrcpw*k3jxVLTa5!854Hty+b`!+m&wY( z*k=350K3X$Nd(2T(hg})Us|jcp>!_}ty1qZ5 z{U#&&R_HJap}y$A9fMrTE{*dMW}5B>Dy@QK91p1V)Ej*KL+azi;WHCQ=$3<XwTuO1-0CWDf^;hLNn)rx7)1W8pn~Se0_VOip*$i>N;-heO8-v@Z+mT z>0#ZiEw(QdN^3eX!pIu%mO^qYK?D~oS*L~jdElYVnzg{By=U6$5fjXA-#ezpSN}q z2IsQ2mNZS=Nl=MjpKrr^`uWP0LFZ4G=9CY{-pX9vekf1gLc|yl6TUj?Gudh(C2clt z^U9(u{`CjzUY!?q0hH_!Oy(7lMaC-@>In; zst~XcL~?iX+4D7PATX$Y0DeR)y8MBk;fn|2DfcJ$G(_W#f~8B2hYhz83)TdmR7?&y z8DoTu&+qoW*)eujDB4dab3J;|UbA(kCw&1*-IStGOScLvEt%eO!SbA!h=*qhNzm41 zmCLjfB>AY?j=I>*LBlct{-9LNhKYdOu~GRW`)wE%N73;|-TP}vz57V3Pek(U_H&(fVL#gYz^*WkS} z_>1)+3wTyHq6ct;I#4hJ#?$lxeW5jV8L2}<)H{ViE>Dd5{A#|g&c5eam!}cW1e=xj zLc=a-MpyRSLW3Gv@YLtPc$EX3cOWf&ZX>+r-a`S4$>CFn=uW!eSBj7%?K*?RogulQ zh{l%ocP`Sd`!Wv$t8O%D2**lvL{h@-of9aXLfQ9@Tg3a<`zwq-q=zc8*Hsg4m#3Md z(6N!DUs{0#i`mWUyd!*%=k6}{KfYQ!ux{^83%TJ%B4N#SJ~tIe_u(~=0+pjO2IaU% z`j9C;Ez2Sy-HB%vCyyw5HOi3&@85kOI4|c0h1B%e-IIW3OQ-F~Fuy*dy|6XhA^l7t zCQ3=-J>^(&2l0u91&bUtqLFrXrfAP}gn!P~`Dma>JSR|QZ_bON;HI%yteI{b} z_<*gpzrKn}R%EZ17A=i9}r=bv8{0f{kfZ0mzTV!9A- znuDfWf}8?SdRM--FsUQR%}a6ND#ek_1;V2yd`He-ZfI+qO21EqKqNfpNY&p0^{N#0 zFMn?_UIU}$QP(Og`TAtbB?zDIu5l(4R>FT^#888JqcXPw3D`W!;fOus)^&`oZ5Vto zYo#jD&qqf%ueULe3*vtD#G^swWY!flLdOh+?ORmExRHkh3J%oVkOX0`8=dLDGuz7`ojhI<33cI+#>ax6T5T4e8>QDM5-k@ML6hI_zZ{QSM(gk zkfJ0@16A1t32rYIy#>h|%|d3ZRay2d)8!DD<+Q}`fdf_w8I^fb4adyOo*XkZmEW!% zy6Z+n(N2fkn0hn;10ld**rO(IofYcUku; z|Mg#MPv~)Wm&5*W+#eb=XmD6**I2Ix4fY@2puv8BZFn$0Y4zst&-s6ihIJiK)u2JU zHu8V_jk>S%hz1Sr?o-yMe|7(EXO*NXhPF$jE0URZqlOOSuNySz(0SCbMC#&9bwM&S zsI0tW;ihL66&94GI~Mk{yJ_8qMKgoTx{j{Q^d5b7pVa7!Q(n5TbEkq1qe^(d&`for zVARkdYfnGRHZ7*hEJLL;Vfd$W6P`dY!e$+oEcS?E!Nv<#r%b=t9HRdhpGR1RAN}}kL&($*x-ulimJgC z_5AtXU;kndo7=5h{^t)Jx_2&B)xiiBqMCc%Y^wTPIxJJ%D^pc5yfT#uMr6vX+tkgl zs=8O^ryc#p($&NH^Sy)9sl6{AHoS63?j+Kw;>?iDP~K6+s`S0{tS-ye^B(!lFE&8- zeD8yQF{QnyQCPrvl=RM2mL-OqJ$z^~Q`xalw@lN~9K#9M{`Ra)c~xn7wxVO9jeHg4 z{!1&?3i!XD{-9%F5Vy6VLknaIZb513ProXSbu2Wz+J7${ni!O+d(ocZ@ga$-!O@DL z!+1|Z1gm2q@2UO!cv}t z#L!RE+!Bpv%b!LoGyGZIpXz2vb3=yNM>k7syTms3JdeAUPE;rA{_MX$v7)k1Ma7W1 zTiK&dIt!vvZlUfJoZPRhJY6xe>XgEQy|P&%kFT8%ih)1dGnt?NNwi`}MJ3B)Vdl?& zUK)+|sI17A4dEA6y}I}Xr9m{Td*N`%Xva?FB)ue7ks2=YBKuvdN75CkvUJH$GqAiw z+R9{&keN*-L!NFqp@il-p;QVDl1YV)Owy`*T4{Mzb)r0#k*D$ec4a)t&066ES|+5W zlZj9^V`-s8D(Qt1b}}1w!;X=1vvuRUSC*j)6GMJJt4Pd_X}0NjvA}m-P1D0(%#4H` z(+=yt>v3l3R7tj?a%h5^SSF%UJgj_BVSz|?NltY7m8Gi(BZ#`oM1T4*B05NZZdx`% zoBMh0P|%{4WvSBg>P+RZN=~^}x;XaSpD;zXYtIka#@r8kCx#9ilBw#Esq9fUD#ICb z5V>Crh$f?zJu0fohnrgNe~NYae|1Cu+aLV&`*X_6SbN=* zyCp8>#G{Gwit;^=65(J{xgQk--Fp|h9??V0PaimKt2xxeSl#dh6<;&s}=5*_f1zvT)Hs!R<1X`;Oc53lBEdk@QG(tQ&{ zhRd}<4lS)XY};ntlq173mDRjz&tF(SKcKz)5R9swk6)Ik+Vh7wC6t>$x5TLbc!=)U za>9Ei*e$~>5Q*BGYw!7KydsqtQYV?BHGlr|9zzo4nO_Kw$TU+c_OxF-Aoqs@eiD#c zA(ub2y@Z*W<4#!oQCpNmEB zRHi%=O$?L06ifKiQ+f|i_Rgf_==oXQqksD0Px7GnWehb@T{b#5DNVeLpVU>I>WDB6 zre9gL$BXe3gZBK>kg`r1$KXXR-S*;|awp;+7${;<{q%8f95 zGv>x4wjXG|i$03lz8-hnc+@oYu%;T}X-?G8!d}>pxiK>wIF9bd!=4?FS(@W2MwqS^ zb^^zWx^XXvyK&79hvRYA4vZii(_*R-Q7aroZ7;@3qJCJ9MI6szVS3p1Fvf}zVQgO{ zaBbg12N+I_6?mTJMI0Zk>IbS3dfYamzM(mu=9-!w#7wrriaCbG&uzsB$MmC?7jt~m zM0Go{m>!Sg9z^|!XGdMtJDdo=j>n9M9X5Sei~6P&i@BEL$D>AEQ;lHydN`~bzUzde zdN{CrFNhd^*!N67qQw=n!t!b1h-F1|BND`&z|f5_n}kiYBHMU0_$qP86%R^0KJA6MLS-3%O$I}t~Ta+%_6Zh%hFBbuY>oV#MLtcc5w znwq7>IE{EjG*!%HO}vEZDn{528)Sr|=pa8Z!%i4!(LAOVj)e_Faieq_O=9_eTxXMP z6CEvg9ij(DnBAt1IBu}v2ZVVQB=;uzy1 zigtibQq4+)38A&kKqu(YUDu4o?U?O5aiqpkouG?KH^XKa-7Bh=J@#B3F^~FgfVeC6 z%8gi#9*u?3RAEo&4h8YR<{t8x7>ZTfsBV<+xG^gnww!nb zHH9uUnOi*KTY)C(N3jl{^YDDj!W3Yp%$Ua^+FsPbcElpSYF1G#h(xSdoZF2A$`+vu zt*{Y6RYp~sT910JuSKF!L?Ys7v9RwN(Lgh}jT}xyrAuO*c?4r``Z{(Ur`KknkE^K% zNW1C|#v(2!74;k^97nl1PSkXqz;%&N;vUsr#o~Iz)a`hL#k!`UMR*}XtjA3q`BiD3 zIHt(6b&s{UdOU2zFzUX}x_sYv!wQSTLw%Ph%+$ST1X~r;Eu9$5_2aH*7`|d1IeTZ@ zdJKyeSQgjSurLe0>0l6WyMBFw2C`!sMi`N|BbM!R4WowRdohm)F&aWI39Z5iAKEfPmS42^wuxcRo`DeR!(L|xDFP2X~3VxxE$yA(!Q zM{v9%3e8|}FElGKu+3J0XA(0|wgD^mxds?W#jM!$xDoYm0?^a3xbH-aC?+BZT-2q? zavHv8nOq_ED-zZmOGiOqYvNpX9X+W!4?lu)hjU`aL4x8sW)!#Dc3jL2DoHs4|Jk#= zNIV_{oQH?KLB#`6AcxVoLUxU)7!HqnjsXp#W)Or?s!@*8a|2W5$rw@DUK~FUlP-9H z=qY@sF#e3;ISO5Z>C>aEJ{}dfC+wU2KZi?#WsbPMp;|`}v4R+~>Uvxu&*i%Mx*xaj zJG+ZG5mBb7WMGNi6czjiGm;ou{LW_KBD0hcEm6{CLxC6ewZ32 z&BNZX`?#M*;9KFiX}CH#pyfmq(vAZH+=2l^!Q=Eqe5|gA%NX~;w(#f_vog>h@rWae z1B(;I6J@;S+ffHqsVnrZX%PKj&%@Ce_7XSTieMPf!*~V0A6Bh{OQ@lNB3cYX9@Qhr zaS-A8coJw;h5axs@eWK*4_%HL)x?#-Eb`w3cu|G+F~jITOGmKdmgQ=e9mR8qp%U@8 zG_;Fi<=g`+8u4@+PgiaV0)uz#BAncOMwg?`*YDAQqghdx?EW+o+;wBdiaj^|IT}t`#EW_c@Sh)vM9hd8wRKCi4xBLr7yl>b+GsYPyMi8$ zn1LC1mZ4e)SI%^F!W%z=@z*h$;$O#za(x04)rgpZr;bJNP|y*L*aPDh3tTORa~_E( z^c7RG5QRL72}a0_t5)t3ErDEst1vS{K{ScQ+~Sswc&Tob+#yT`9y{Td z16G6t`iP8eYM8^YA|7OfXG$zCGVf?%yb;5QI5^?pMV_l1!74#La6S!zJZ!vvD;xnQ z!V$-BQmov=4o9&efH7f$18}G)C`%CLZV@r4Rt~&lVkZN`!!{Gl8$d0*i`BSR%v0Q2 z3$HaoL?1Kb*l8!mp%~nzz%mGtK-(0viXhmg9yKByHh>q-9=DGW1J_;iRgo7;KT3FF z069kt6ua&kII}F@_wk^7#f{>3Q9KHu98<%rN#KuDM?@JAM-s>=W(C}(MQw~X&Wjet zy9brR%z6Z?#3d?81ipzAbm~zwi36PGxTbAdaX=B=zlg%iuwoh!Ebnl95G6cB41?vE zD0}oH>P|7M7~*PKgb%FTj_a6p8?lM%u^@^oppy20xX!>wFyfYm;}9oQkAx9?V5S%j zpyC~I{1t&YNLw$@BUMnCJj*RR8!O^eZk-Kbh z!XnZ@xb^^@z7YY9LUy?&fx_0>$TyDz=QC`>GLcrz_QVN_#M$1cLQ^Adm@o`8vJxeT zMqa`QEs`m^#Zs-qz@p+@BD!cfKvWLL04Kqy5PXM~BQRmO_hML4aJVyCBrszr6OPb| zDbAdH1O~*n1C0wG0IfJSNeY*U2Mhs`Q|uM~u zO9h_l9e`V)((x!rryD1VCLjX!iGu25NpyuSu|YrV7&8YEBcd08#zQy&Nh1jiB3$8}Zs6|>dwr%fH~(FC`NfE^>1#1^gt8mCwXn4yNxjR%ee50hIl z(b-^xTuSbWuUH3g8ZouOnWGo*dwnb7k;KBQB!B~Y{`ESrm2nRf=2~b)CqkGSA$P!p z0^&8#S6DTkCAP!2IBp_%yf>zWcEMu#q^K0yCyXqRG5`Sp>_nP?qypeei{y+8Xs_5^ zW{m3vUQ0|T+5JF*2@olK2p?QrwQ_6{|FHyGKuZ}WfIH5Ui8l(o;VX1IYK9r(LV_A= zJ}d%sBFZHU@?%8+)D?Th%L4;^NTPZHRSdbthK=mU(5MRS!)*q(BD(;l$Wgdl31o#6 zN1x)=s@{PuaAQCbQSfQkm+S#vYaDas5>BafB6w-o07w-7p2QTAj{pD!0Q5y;o(g-# zfx{gGMVtDnc%=d zapN}N52;4jAiUt(SbfO|#*kQ(ml-D6KUak_gyVo?4sfs==g=Y!9ya+)!HF<}fhunh zj-zlaNxI^Y;;;t<&L|07nJ^Yul^+EC#lHesB81mSun_+TV4WaA7!v}MU$4VKeSpQ2 z@-vAkBvK$V40;2$gjb^S^l@5oJOk3zXj%|jANe00{9Hs998xepEgXaXk({PAVCu3`9Z(4keB_VFg}uED!?+prP1Z3HI?o zG!R`P#t5(nhz?#dh?D85kRo6xfb%e+5VnK-7g;Ed$OS$ILdG&E-r?d*SrG%Xj62TN zAe|Nk075MiKCAKuq~r+*NfJUuKnscIV3Mc7v~#n7Wfkv;5WtdrB}f9Y`zx3uYA#be>6?)&&b8)b%8%rCK>T z8H+G38c0-6vYK3?Ya*7YNYdO2-$x=Q1DKMK9}tJoFo3AQHk~^ybm5?oQ1XB~22_GY> zusE*x-9p_Uv9aduEE7VZyjlVBmXVy^_uL^lvO;oKTReW>0-Iq0*~YLZJeM8*#l)(pAmt85;)2+9mR-Kjp5fI z&Y+FaEQ)o2iNXQk-a-?>#}mmi7)KA8e3 z!hIvW#33Um3aXNex^Xg0@&UplP@M;nFt9TY749w35gHO|Vk|JlsfCWCm=$=QKxw!; zWDo#_$&?^d7?d#BzACyS#Lz(%Kwt=;BwL2!^-0l?hb9K_Rk8~+NDvRrj7!=8ZWA6X z-Vk8{<|D2i0aQ-X66zRuKItzf%0a*ZLc(yi6zky8w#9{_qy=A2z?iV^5aSz&F6Kcs zg0MGWTL5BEh6DxR8sMZTdK8NCM#V|<06fD~!b^&SLZKNs|2PRSG6@Ph2s}-80wx)u zeH4+8B9-ElpueC@=!&?Ols>l(tlR;khK5SmMXFZ(C1Fde@|-yKM6b9x#Ps+th%pgu zj+_7)LMe%aid;F8Fx*%mJQBO?0||EsR!D%a@G>wkIGsK!5lRLQ14NfNw@)Su${APq zi4qKk(VX~|zNrV~AcY2iCbCeLIM}~F4{#N5Q;pw~3)ce(Zp5^J=y*SZBB*v3Op{;^ z2wlvM%L(9)Vg|+XMv(&5J6!CTi2xUx#-X*!f>xIc6Sw8LwC|4X#Dk?>IgbEEuHVP`SFbue*q@}Rvl6cm@)8kk> z)jGIvB>BjkM~G)}-Z4J_`kEokM%0U9}iz|zyzyT$t2-^giR=fkX0lh`2b8M-QQph|*8OAl$$tWuH72Z13KM&W(Vkx9* z1x1uxCrJdI$WZZ)|568{7$Ldr2-7k>8^j#fo4^QBAyx-k)D$)fz7BCUm>M~(2_;283*tq009yfigln$bXYVNco=Rh zz%Kt0zz~!nuvBrB4^a{z0!WPe00BfIH$ol_&z-1Sm5C!lV>5+@ibu&dz)gjsNUVmI zhyhS3W`%Xcyofu>THuRFkc3(RItNr#$u0?Ra=f4)u^5WhM}3h)h0y@^0R2hjy#j<| z?{O_rPDGrLUqC!DRrq7XNKwW8fSzxm_aSw&U8Dj41ftM{A{;2(1QquKFBo6}bOl=g zKa_*OJR|jzJ;KZ@FfwLt12l3dxUgWH@YIkHm@Hgnu{w&qB4R@40Evoa#s?AxJv>F= zLh^B{I0}Fr_L$`K#m6U*G5{X%$UWdAya|Oafk8zS5RXG|hABt}9o{AEb?z6rPGDrk ztiV+WIe-(5ylYBUm&^I>JD( zC;kEY29#M8J}?}1OYshfN=quw@n3KuGLRw#CWP6#KEOcnN=R1v1t0dbRw0}6Bbxa6MPDKa7oJ4if(NyWeA z@QKer?7;O&wG+9q$toTI;54aR@Mh$M=ogeh61Wm5U{l!RU!O;m>EaM_C2%g_K$75< zBu)?o8y0LzHG*^FT9L@Whb7uExWWKULm1R~fI z#XH0^g!qUZfr$l_1-uB>D|IZwty0Yj!V9U&ScG&q*9p9t+fKwOj{u@q+>a>Q3SS?G z0{4*kAMgjZnp|}Zp{3ki5-XTWf$&L7kd%ucT>yVX=U{p&rYxZkOi6ypImf`eC>0UP z1Q~QHbWB&_$&i1LXoHLt%oo$dCV&LPfb|@#FM3UnEFlH393P4A2 zThP5IXyP`~GSEK=JxH+PTmE_kc#I_0@bU4)z&%iRI&KP5A2qOQ3hRuWL6?y%K@d^D z0K}kBq>H#xTryRyjARg@1`7{UD8b<2@H)_m=td-7mD>iQgo=Yfpil(bwg?M&uff^i zWrH0l)uI2|GcXf!}Z{H8P@{JGuppqId_Mhy^0Z#!6HK zZ7tx26Luzg%e6(}LhA@M1;2cHIr zlTB0H52#|qScIuz@=Wz%wxPD=d+W+RpkxPgs@L>jV#2M zD+HuU`W3&I)%cEzGeIWT3h>i8KB66hH1-XKK3V|>6PQ!64nlL%u2ii7`=jH;Po_== z{UC6g3IkwAq+5Z82ZU^qK#xg65#b~}kbI5e9dLm$X*s-#2o0Jod}YFDq8?Z(%9XP< znEVKZrLctXFVJ3i*C6%|WHMi&;ZOl#a)N;J9>6lhA4bo)th3Knt6DU~#5UET-)qwed z9^&ySjrzpsq4g$;`XEH!PQmg;ZP$&h{N3g z8zs3!iw7zV$N~{PM^$!^2vY)EUcvDR5Q-a*LIhBR_<`4~I1k)Co0Ol_RpE}HM4`I^ zPob%~^eSC~a|Kg|y#e^gg2KuKHKJAs*qty=}J{L>$CmNV!j>4(|SfFNLuMl&BgyQ-@A7gXzkFmY30>vR+1y>bQ zFPR+jLu4GJf)$M|7@3O8DGUK(4U(epZ*bwjizuUTu>Odp(l4PLiufFMC{iJ8NkSE@ zt_SSHMnKI_oCiTESv1r;Q->7=eH*9JgK{T13l#!M@)(=JN?0$+8~B;{?C?}Aj){ze z!k**caI52Je?n4{Sm^W|wF7$qgI-mkz>dJ61EMF@j+XO@c3^{mhY0mc$);kq5G(+l zNu9#J!aheR4j{D+Nr&{OLbsE5!vRG?DCwlkhH9KB^&@l#fanjXq0)(vpu!k)rlV2g z2HHs~SkNCJ3No0gm2=uS+c<`32#4ASfttBsWE%h~lsXaW5&jYouZPA4JArivR4rV3 z#7AY-#1=&e{KOB%KVk#8l`sJ@eg{P0|w6F$fYWx5gWn@Yu^~_9(-H1yRv%)*b^^Jhy#B*I#Bgh?) zGG|Jdq=*MGb_6RpVWh3#N($$kQcG+)9-2@T74N{OBJ3AHJc`A|-N1RHWC0b7UQw|> zvGWwa8Q3%o5-CnNupB*UKRtrIQSL5vl@2sO57Vg;po<$10ft-?{BWRt#jJ1?$iE4l z1KElRWQSe=i$lDm;eld=i_?Y*#0rYCBI!j52hIlO&4LQ4&?UmtqJ9cgELT$_7mG+C zjG0C^Qlg-E2Y>=>3}^rZ+DNU?&{!5usfeVCUxFII!XUKp4LAb25W!zT3qjr%7Mns- z18{P5C^RV`C$j-*9TXar47Mn&UgZe5Pyr7mN+%ML`-HO$6Osfh!Gvn%AUFhgWXVXo z%6h48!$wDhkygUh;xmHlzp~n&60mXrF!oXAP6>B74j{Ob;<>RhXaUh@! zzMznw6!u(dID}J6%13IKDb`0{!#I<^V1UIcX@~2p<*Frxhm5`^@{UUILJ$YSqlmmH zH?XBdpM1O2K>%h;P8`4qsy z>0tO+cs%5kNmN68Q+Z_2Hu1fLBMJ&Y%7?}s>;N?e|Q2D|)CSL-)NrgMrJ8@WX6dXerQ_qU!0r)WyM4e)6%EY881kMjqqbtrs z-2n{9Fzlsh*+ndsqD>$@{t|Y|4W*s5ow1UMbU2gv^)9NPWh4zJ?N~-gO7-MfnNTvF zwL@u&Y_qPFFq2sY=2g$LvYBueW_ZX-IazsDGUTRpjUHnOlXfIpGGXlVyhxYYRwCnt zl2#(gvz$aIfdq$=x}8cV9XsKLv-`S6L1PmLb13U%bNl7eHZ94fr8F~}wY+3HrH}~q z8ZkJTR4U8L@OGJ3MhijT)k6tb`a%IuXAFg`)blKQ9BD~A70M=ESN1C%a*c!&N+w({ znT6|`boP0_C}ZJS^pg8uJj=;A>9Cmy8SI+O%Vl1&Mr>s!X(z*4V&CVL%7UutnGj*K zJWI~eveKapn5>iZ?4*(1=X136OgM!<9zv1Zd*+pOkcq69LN+)TRW@6__teH_L7&qh zhxzfWj2@!rm=(hPOAzbA>Qo`n^*t+_g2<$WOr1-~ej&9q*$a72Hk&fN1h9B=Uu6}y zJ&nlQ+?<@OX6Wt*Uq0lf?5u64QVUmbmmF+S^Fib3&SDH22-0h^BFxY*-P=)W2_gVJ;;#o;2 z?4&7D3;~?%xkCvcl29g-u`|$ZQYjTute#gA-doB`hC>d;kG1gWnKW4sa zEYIRTnpyM&L7C;I9V6{1JVNz;rSPS-j0lvQl)H`HPG%EaPfJS^s3%idRfSDG&q~mQ zR70;?MoQ!!#Y5Y)G-ezkG#TEko89NToyrKU3*W@^Sl%8z;ozWT5)cEydhLC;L+ON_ zNhGn>+##9Q|H&Q75SV7PY&v8oQ<>U%B`wr!niRU1F|vlc?=~$9BhE>t?T}?>M1Qeg zZU+68Nut1#NKDq=XPuJ;Ee7$(vR_$wmgv=t<>F6-vr?7L6BT%;`W&-VHYKz)eqrr? ziC*=R4t5)kw2AZSr1$+m%M}@0|KA;R$Rf(4yMsXxuGI%L~ki3l4wGfAy zvXnFetJSk5q_BviiHJd!D>u!6x|0h01#jQFyusXUhpN@O5}z5Fdz{KJ@C=%+ey0iP+vmXp|D=$ z03ZZVrc6%-qztA>J#V8J5`rOJhyXHWl3-@S#)6LxtO^ynzG1-i@X!QyrY9i>KvIPJ zAo(ZYauoufI{@lxq~wD0wWX~9?H7fHA^!&v8a8!3Z-c-^>o;6hGTvmm1TQ6PL)RdZ zu5?|gZ*71B4uV0i53m>}3CRK23c5K{kbV>Oy^WGFupy#<;0oRb4n-mfR1hKtWd;gl zGq*M#2v|u&1(*@JwMmsfMF6zKA-}Hzd}@bLsKy+D3}6(=0Z8JQL=IYlguMzasU1cO z5^0x6W&)Lfga{}q@B}~*N2!4Oa>K$R=spw}sI#&*3aiNs5WzwrG)RTkvnAA-kkO*! z3CK@wZ4@Jc>A-hG;J~Zu8^)glj-o>7$tni`ehapWKtlH;pH%NK;3(Fq{xro;(@FC>MubtpQ32 z$s`R7IisFQ0x(0O0lp{GCc^;dQQ|^pg|!B;ufAchZ7AzwIiQ(x18A*A@&nwDa2&oot%K7$lIy%SGl#Z)zYuk0!X8~4{zh&V6efg(IjzM-whxz z2YM8WC45|wNt&2Iv6Y6w+yh6EQ_Z~%i^=(bR`MFz67q~-=**fr9TI8vnMGEPEd>#v z{#opsqzg&$FmD!3L)Ch=guV+L5X_|*MF+f&EE1FD?_nSil`7o%+DS@I3mT>LVdUbF z1t7mOeLnPc_TG~P{;oNdyGxd#d@L+t`ce`Ql!EvFa8vB{MZ_tk+kWzd|vAZ$@ znOhqjPT;Ikz)5nLEs=(UuoVPtr$T^CNx3@yEtSo zskKBe$PUU4fG~xG2%jDuqk=qhlZ5F{qZJBUX|a;qNrVH66?r@%bE|S%wZqW#fGy}L z(dHZgX@59ls5AK7NM=22Bkc|;l4K`o1sS%F!X>mVScr7c5<#XmMAR1fX%a-xm1FhY z0O&K)u+65;Ku#-Tw>2y`G*01D*L!hD&{4xEOavChPLc?~#=)$SJQT{l`XQJ$v6o_UFho_ z<`9&?e==zHDff-c5=lQQkzmwf73v)(ymT^(FnnYf3^7E+fnFmOzp4tw+yO{hMrtjg z+`+@it&NHeNCbdOP+ID9FtR{a$uu!%paA|MAc3xkdFA^hX$j-- zDv0~gMsS}gQ6&X~Hj%m^95`wKe!aw>M&h-~t_v?+jK8Ee$@S3o8IMI3B<&r^9sT(` z!Ig3eF6q5O!bo9$>K#d=UllF-|5zt?9^pgr!oQ5^rb6m|_D)(Nb0D;YkiF$Ti)RJJ1!4$k#60h$hZ`(n7^Kq6 zR=QC@y@o3xA2y&ALt*~*zB5O^{Yet22apa};x=LbRL?wsuU)JjTin{;%7otJN~wEjj3WKSq(fwV?!EPIO`K~vLmj7&HIPo8zc zjzhkoBI5MQNazlDvTQd$hu^I5X6t541>5g^CzK${ydio(KN6)2MFr2ngQ1e+rPhBc z(7Q2l(kTqC7b9_N0YxxG)JD?UP2t1sovp+@bbtVfsnxmiMF|MH)FaTcOr_|58cC!o z5j_-=oI#TBCBOqBoRJ22d87||`S0B!z8(S@Qz*sMU*xQrNf=Ch7ouybY6kYsmX-;> zQxYI0K$4+07p9k3P&_7TXpvv|4%C9=ITi1BzmuK_^xmdQ5ssqVGU8tRH5krdhg6;A zc_)AhtY?lNH;t+rNHG-L!^)u16|h3S+0y43|BjkJ;lhiHEp_A2+=R3SvpnBBfA=~G z{eI_pQcnIm*Gcd}ou8D@fhm&WW@!$JSSbn?_lgkO__Le#kxNp+7 z4@X56cGk(QFm8U|I>B`)U#4t_GCO%EA1|S-kJt_b1_P{c;r70hp!#>d6JGi6Tqin% z)<}fme8Y)b1}h(4H+>W784)NM{Cj5$dV}MHlyVb8YIN0iJ@&3u3TJ8L4HlmB!}yd2WK*CF!8^fJ^6W2QI2a>l0RpsyW{8!1I)=7l z;OcrF-`Y$X7V!~D!Hk*3b0kUYxukw|GKE<;m9;af3fa9g&Jv0xQ+9~x%7e>5N*u0| z5yG#_K$l1-mET>e8%^gOd_F)Tp;U{{K<%DjE2IGdpH+PQy(1xU(pg6uY*2Z}z2R$E zRC-eJ#}|OWGV0$cX-5mjfkooRiN`8EY@kq6Fh}bYRWIhf@8o+#RL(&7ruitbA*Ic< z)uLA^kT3=@&yAx294Z92lj=4(9f{3oEQ8-HOue`Q@YwrKLJg|Op2*m@J84tLjYDn`0zOzO zUw}iZRG{kKcLHQf&og-I(u1F@2|*WxX3&0(UYvO(LHdPK=t$QXS~^HHKpi_Z8`7U1 z4%LoKmc?d@IY%m5NX>nRm93Q>X;S$dDo9(-(rcNk2y+ck}g{Jo<=~ z2ki?;Q6hFZ?@^Z|2Tc21doI-%;`Z(k;zs`x@|Hvp?5%tb3oS;V2H}PY)GvJivrupW zv7`|R`jd-|0>uFl>>rmS&qyJcyCiBT8_w-5`BuI{LcSTPSAMgiZngk{bdo}$kmr_> z0Bgi9@S@3-%Lhy9e>U;RK4~RUA6Geo_RY>Lyw@TUtp$8-S)x*!|mPE4>?dMT}xjl2@DxbZ?3x z`LHJ?LZ+%;@7{OPw#%iHC+b#!DRzilmwca$?+Q^vl1FZdARtHJM4^7zAv7S>eq=={ z^#FXzr!}Qw9ak66UT!wIT;K`J8tFMHqf&k0bnk2dU+Ef9yy&4Uv*MhGP(&jgz6F8(au2j z^o)>^N`?7kxSnuR`Q8mEp9v>)h`tbZ;U>dR!|e#Apbsa>EILI>%vDM6GbE;MVu&|Jg4GP(aUY4`6F|UNm(h^o_WxrnY!&fF(RZBDS0Id zsFi-f4M|B-7{%U!8svE=lnJ;sl&a&ch)$x}0F{drN0C0}yT$oNQkqJNhQL{hEJ56T`QNq)q z6&5?Ks>-d~B|d^63@e&mpqE&yABXwJmBlIK(@OcWDCBssNtCt{Gv(fi+!1Tahq7Tj zK*lAi^km1#kce&m4mBge=D{rau$|LoX zsDo%nbFf<3B{oE4$$RouWuBDB&TyHel?pcFx9$)HfbcNoW5s)97p5f9EWrc?U|ga+ z>y!`D@D)%_Cx?pAwwjm}s23DTD%tXk1j3_56aF$Ex)9%!dqPhU1cZQ=TwI=!5KPH1 z^0CL-*pQforW&{{ z|5^Aifae6h_@2VNq(KNOP24P1kDI!8qSAloIw3#i+F;DpMteoX`8(-)%pD{AMpQ))0V~7D#Hp8$ zNT|N{zITUsAtqGVUb(y$x0(WPnlsT+pAF7q2?b95o$G{aC7e#!QMC~}ZGWWCCwh;v zHPsj3_Rbc)E>R_+VUF?wK)`*GwzH7+=sl8WZ;8s_rSSncTCU1n5$=JIN}&P?XDZJ~ zLO^K=4!Nl|XNanX%S%%|2=36I@{Ob$7p-H-FXnPDm@haM^jWeTzRK$5(L>-ibh-t^ zz*fq60)>&!!^6Bs$Ygkfl#xK3n%$e@rU3X66Vv}3!OyAfIK7lz6%&N?PY2+MUY$p>H~}a zCC{L$Fs-{~aCP}JSkQD-&skn_3Lr>?vCK_JrxrMeRmTZt0i8#^O}dKZW=|&pQ#^2%QV$n*<_#v{2SSnJr)3B6~}-xIK1-)C*V>YEc=4*5>Aiak-H-hz%ONlt5)W!gYf1WRK$pwQ#S7#Ux`bhr8q~@VDibm({8K2k zd2{--uSIgC0nKm4IawNFi{7BcvtV)3J&Xh^=p6lTXtiJe4$;FFSd7ZWoMS2;2KgxJ zw&ZJM>`@+XoSG#n^$9v)b>?mvJyqx5=`qD=tGk$;>kzR8vc$G|22#op!$dce*lO+|%VzITG~{Nhyjcmhxl z>^dFFk&0oxcZZ~(zI+RT%Dvnzlg_n#QBOX;O4>1xugQn(fALPK&|#tS%{lQP^3C=? zM@r$+zO9q&2o1m>G}7Bt5Es6qL3a$=Cz4YD!_IRmK0rQP7x}uBtWz3u(pZ!Bj&NW3 zT1K9ceB&-gevq=doV6$S0rW=qBuFXJb}QdV(0HMD6Nlw;0(|3wk9yJGi~hzC5%Y|M z_(t1z?loXMvz4+RI(0)NrZ9$1&Ur>c5%{?z{0139v;IDQF70Ksly0Y~5YNJskk$dN zl}&`w$rNOVtOjR2PgIvk(7YmJhePR1G8HnRSy0<=rs!#*L+tgaSXcGFsgvJ~mjJI$ zd7+F$9l4pb!04ec)8@gVoIE9k5kJ>S#g*x7iJutMsh~sgu)!786;*>PhLyxBQp1O4 z%Bv&gsZ3RMMP(Jg<^|olm2@qWf4`J}mw~-Am+bkcA!P+s)xn7Bl0>SytfIVQVO3&8 zCSADahh^ne)d`+e8tYgn6D@;$kJ=z*PkTgAr5rUwzVk|3Ci>?g$(mO;cI4m;k3*LN zXL=!1>!XJu?w6R_X_~=5)csjiMYeimqB0X1#JoEeM$#3@OhJ#j6%|B#+Xel~%F`7i ztLjFi1}Dk~WzroBiwleETScm(d_<{uXZtup{|DtrJvg~IY_Vd^5okPL@@`eBXd{A5e z*PqXST?LIA?4y?)h6fc&81xWIgJ0m0CZ(vfP9W+ejovDBu+XhOx>KTCC5C>Q z=I*vWz|(ZGL^j(Lx&B?C^UX2g%SHNKl=HW zD&LVARhBI&?cKfiuuLZ13q@K!NQ}>a8k z{&-?YRi?1^N4+xD!z-~h*p%F#bgM{busnPIEk3+_k7@hmm~?PyruHvue=fEpH=kIh zDpgrFOl(2jk9x)8@{glR5Fe~af`92eYFHw5ai+Q;Q_gfM3p;nJdEn&P4H|?tm&PJ} zM%}e>)qu&FFB9)?-92*Y{4*c@d-40%jcK}HuYaA`v@j?=`h*X9HtSr}?$!&=zIE!g zKOCRwctZEbTlf0>l@9YyE%h$BrOz27Uijw|XWV@6t+%wjzTlMW3r}xWaQgnY@2CCc zj%f?uduHnAufI5d)!+BOE3);hHJ5GM{m`AqF4?&9%V}Sit=Rcp`!BaY*JDoc!iGDF zdK_P7EWTbdyIi`hXh!QXx7{)Dhwc+*G+q4k%0VZV-g(xS=AVzgedR{;=IR@*t4}qy z{bS8rW52kx;jw)VXqcGy=25rB zJapoP+Z)eaIdf8nZY{R_v7~g_A+L?texP+wa(vP8GecdMZF~Iig1(C{ZghamTi{hVt_Ln|KB}PnJzs$Sd8F%`ZH;g;xwf$#5(Rfg4&FX7=&f0p+XF?tZSt zdFS-_Ymd(sUmml+YP!AS+Mzu{1Mfa}^lklv7nZbr^`03;*WNUx?bmH)hLRJ<>JmTM(Kw{(>`|Nla8XUOnm>Nn(r;Mw@i)uA{G!b# zgHQjeqQ@h1dR_3`>4=Hmt?Sm-Cwikhue+EfoZ zcH#GhpMU;cb*Jy<6&yCX-@#Lh);)FgMPt^T@UI_Nb!xit-sbn*+O%fk$EU5ix5Iah z=e#n#&1GvF{j=BpM?L=VQ}f~88u(uUlpHP zFf=ki+qPo*5f5Fp;-pU97mT{%_9h#SeQ0E~`K0HrZcuhcgHHx`eX?=_V)ojZUnZHGdTHGe zeKuUoj(q=o)0)4$()H*jhnKW$kbE{9dbaeVvrn6|$(i^UJ6`eZ8N;_+@L}tn*18$p zmrp4@b<;glipC6%ubS59obh)Im_2sV#{+kCTGyugvaw$u)PGU0O*^&H#N%F@dGB2P zaJS{>-FI$DH{NwgYT>kx9)GOsh_xpt{;l29{(yBq>{{4$;els<^u^9ATK8@E=?Mdy z6&`-=nAdurbn@!vZFfz6_lU@{iOu)F=hO$|(f;Sn za7SMM$wy_&?(m*CXKZHa&8$Vy%5P5IIDK1? zthn^qwy%yqc-8PvRvb6t_}AB8aH{XOJ#_Zwqh^0M=(>LGxPZxK4W~A~r+vRiZ*bFS>e5+rKROq2ujS zXYE{9{QS$W-LmnsVZ$x`Xz#NhSM0y=)g7Id?d)w(1Mlvz zwbkJpUTway@jYgA?b2o?f8Tu5F-&s#Bkz51<~yV3-+cJXJ&!3k-+Zm#(UY4za80!N zmIuQtCj9BN#j9T)wdEpz?b6Au=1=!!L_W96$N_ zuL@_}wkY0W%eq}3jr-$^kui%tc=y0nH@>j^zK@bEipx7(xF+=aQ&(L-yXdBC7DuMP ze_op{;Rg;zA7AnGa|dU@POm%s<+qzp`S<62_P=Du&PGGpEojl`oYI-cRSf*o%ZD}` z*=T!{o8Q=UQrlJqcMN=B>pw!3$%>tKzB6sbrg=qWHO#=jVt#P_lt+8tRT9}cXza23 zZywzHo&8haZ8+tI(M3&Oe&+lGU)WLD_NxOP*!p1T&}7fk^};W_bMA; z-nz}DYu_$eyXDS5eR^u&_qtv2^d#t2X^t-d?j(VfGwC2PqJ>Tnd{OPm0U9vv(+INEnkJ~Y8!(|I! zONt3DT6IwTg5LKXyZqZs{LwMjuK4@(qC3`fS+e!{G1WCi8+*nt_;m5;oqwNQw0r3d z=_Z}KZF#Hr;>eqKPbqrv9}^dxIN{TbQ*uGPcwEbpmLIm>-uC(CsI$X&>43;p^4Uebah*lTBA| zURzXJ)APNC=NwdZXrG7rHQ%+o-`XAD7f=4G{pnwA{b*pHnwcG67`da&S*>4{T>P(x z#+|<5gYGq*z8So5)`O9gN|#Oh_?cbS4L48DOn$QYb3eS2ex=pS&F@z&UVY7N=bupe zVQS)nQ;uHt#}6;KX57v%$M?N<#Vcd4zkSlM`yVPQy=+oXXHLz5AGVCI*?si#*NlzR zcMR$H54-O(W3n|xWydrh{?6=G$B)}^&TD_4wf6G$-@P^U$`?Y<7nOea(8L90M-`nK)$QhTuXRbf7+r-I5<3G6c+ty>R-LbgIx?SJD zIpwR){#RRH?rv~i%QjD3Q2NeAO_xpF@p(m$X`Q26XN{YtEt>AOa7&oR>f3rcrRNSk z`40ydk2!4HhU!k+Z+L5+-zhip5EdC5Jo15X-(wf<=;lAvZTr>5&HRF+e=MJVXHn^$ z`^Q(6U(a(VXKp!WsWE!<%9+mn~6YOEg-j6b#6f(r_Ahcj=@-J3t_ z@@lJbM<3iV*|Ry)yY8uDhi^T1;^{?g+xD9C=#)jw1nXe(CzjGqq>BUb3a=$A^klGUK=kHfl9R5Uj zyXL;jzw9!zNyoD{ygh3|=@~5=ZL+7Ax!bvL>0&wE_HRD0@{z+E4mh-CeC3!sKAH30gO8kFaM@>N=XURO=!;DspVzm` zboTjz@i{GC7 z$&LL^e)HJ_O8pHt&w91h<+pTwdi18dbUByfXMBCYOQX%}ijJ=yRN!Co$?)snsqj~v zc-h*X%eJ?AaNZBcZMmmy%c(5mnHL_otn=fAMWNf*HG8P$lkZDka|X7#ztNm)rx$sZ z<64f+^jy<^(2~-cnHQwrT{ZYSW5Y*<6Dz-+H*nUdFS|9{AD?DQtA(wfIQq)#-4+cl zyy#XQ_~rx8MAj}n{Gpm1H}*TF`@%-Y-?RDVle%si*L>NLugz{XwN3fhmmit-Xi;gi zuQorhvPI&|W(}{rebUKee;9N9$TbB^-kj3$#}*%ay#4q$uFLHAW5YIQ*A#WTx8u>n z|2E^|(lHb4hf;ISeeSH`yN-P6gLlTyKd5B-wgEKyyt-% z#uuHCJ>|;rZi^n%+IPF;i+ffCVeES#f)~Scx zu)w|W2j}>??I+*A_=%b4o_GI(>MPeTYj#QMMr~2oE$?@q+-l+Ux7MvVqVh+&A`~35&#mntvv#yO>-naSt?loVv?>e#R z^*tB9+~VCSCotsxcaQ9{YSg@IC!hXMFnDCbnt6UnH*U`*pZ{Uzv9CUNK)QR!Gb_Jo zh+}l^M|Z#S!<2#_w*~Q6J{Pe^VmKoEWh+ffcefOn?v97)RK~FWFpP2sbYr$*ZZR$C-^O0c3_!>su|omRIVx-mR=!Q#SM&psBzTV4KI zaPn)TUwHA;Hz&8~5Fb3UVUJDU_c%v8Zs?pd`VGvkdh*d2>gAEY-SxoAXXk~+kKS_8 zou?1zbzw>OA6K`(<m9-tVAN#^{2aJFCp#73ws~c~ys*WuG zwEg%gyQ>FHx^(S(*KOUoZE36CNYwaeS`2@0$mrHDpI3E4qr=y~K6A!hPd|S4{HM-( za`e?tkG|Snd&J6?Pqf+k_ULavExKX*h6#^kdQN)zs2?{Mzn#1L3!?2?4FB}9_g)zF zedyRXjl=G_@LwaXna6E8rQdB2_HB2B)3?#3XD{hhGe5{hd6(by*ketS;;H@P`C;tY zHoa59`ofRaAN}OvPmR5L^7%Wrf6?&#i9H%mm=Wo?e#NGqoBKYvqVI&A!%wdK=Z8h# z-7s@&=d%{+hd4_{^7Q41M?UqaOL7 ziQTtHUjo;j<2u~CV%GYt*X;=zWu|$*WVc}`2)JL`q50E&o@t6JZH@#^Rh_O}Sa8?Q+lH+>bL8&f7ykIs($?R<^=Q*g z+c!_`{0QDt&zs&Yttqmv=*a@!Z4jSYRNCu+QQcRSyWd~Dc*gF}pK5Z%h1+l4u&dR$ zPbSS9bJoF~3-8)7Yh~w~*pXQi7p$sT+Wi$BYtrYNZ}H%I9ngF@i$3hnzkcK|e=+M% z<5zXsue9d-KvQcmAbw zf*ZK}(N!Pl$8>H|HT~HcZ_c0d>8_`%Fcn+x>N(Omf7`OD<93Yj*PT7-nIC?f+WEwf zR?k19X69wDz5eJvP3mVG@XOieesRya14lO+HFjQiR8DE@54|q`i_`h-=lOrZh<|?l z;mxVW8^%TZZ$I_>3$MPs(QBKZ*;2`_9C5TZ7X&%=^k z8q1Emt6sUT$<9O9c6fG5myYwQw!XXhxi0R%yNe$v-hTA^QztC=c;)z! zyUsiLy%C?umAkR;BTZNTSn=l{w%pXRa{Cb{B+urlYX&uo?Z16d*N?Uax9@B|^M;jU zJs$I5k4OAX+sEHp{NlH_UAg|6Nsk_J_RgwLK3(*9o2~B;?YzF-&J}Zt=ReiDVC-iD zPv83B&_&~!_PeFWBtEWMeD$0E_;^uwck`Mx9r(0j&w1~DJnpfLx2;_L`Fj_2efpcf zIh|LJo&3Z5yOVEmx%R7`Uf5|{XMg)Y{?_Tpb~{e&^WxA&i?`fczVYH7kDR}|f7kU* z7Yy0`RO1kfKKX-P3vMo7@@VCK<+F!=*!SJ5pL}%9j(~DQ_V~f71fIAj+e_>bg z>hFj3-~RGbO%^V^dBLs?PRAp+?)>(t#;5Rr^d)PGSMB&$=+5YL$rM4*mbX_#Y^u|9=zzKeCA{Z&;B2;)_>a+q~!cl`lVI-bJ(9&t3Sy#Vw!t z@$uDL_uRe>V>W&9%DJ!18}t6gVAT?n+uV0o`n+pz!R$Zr*tfHs&ZBO)e?jk+*DrYb z8`J6h^tYMj&(5Fv;u#q2cm8$bf?LZEKjy;sx7;(&={4`0OS^8pV0ZtA8*bV)vPavB z4R47$?A7*&)jJ0r{?LZj-M239_GGt}cb)w9@vVNm*6G}-q?`Nify-@t{kiWQwi?U+ zXrg-C{Y_qKv-|LxrB4kktaVbxt!=aTu5Z5Re9gzNo_D!+<<5acUvDp5GPcFCtDEdJ zcth{|&i~8mtqo5bc+Ka<2P}W%&2^pPm+x>2=03IkqA#CnJ-oq-^BSGBYr^aJHbtu* zsh;-3`-`qx+NS*_bF13_{fA*+HvQzq-3O$%kF3?*f8F@#%CbRMHGcoqmM3I8$1neC zV07z*mhETaTYOqQ{ei!gZAppFpTA@Doc=G|y5@wtc6Yw}>A9(E@d56<=!4@wd3)S} zhwN%MzIxWA=b~HRU3G>%{>ft+ZCG=~t|p1O2QGj4rbQD`;juHmxO+^C?6eb?E^2V- z^p!Uccx2P3?c`e3e0^)nJ8M;7=08>7vbl#|Ib`0O5fe-|($+bA83IkEc#~xOiYuH&cAMvU7(V zyz0-x?>H3Ds$%G^*2PWlk{4So{hHHPBtKntP`kTIULE|_Nf$qPMT49>)osD#qRB;V zr?-FczOAe8KlKmGzS=f1=S!a0zhR@JuKe7b_4MUij@08d*1~m{%3_v{|3lds1Nxp{ zva|8)U#@9WT65mPEps~gh*M^s5_J0Hg$L&iSa|uBZO{DR*>V3*Nmm}o`E&OH7jQ&wt_UH(a4}TgHmBi&<7qkp=vr2eW zE8&0W{Z4j&LR`9!&DdBBZ|GM@8)`GwvQ8rx+KO#v0S5c zO+5^f335Ey1bV7V?R?M`v}Kx8a2LoFT7lfuJD-22z2a=SexN(E8wk|L%`#Mx$OlDf zx1-RbP-u#ipcHSdfs&*8S>d8wn8I+`wH;aqw2{Q=vn4X>7>=3}dFiuqbAmey_Y#LZEocoj z5pLDAM=SAGW+TgLy%QLHuQj_`RLUHYq-dD}~c*OV=9^vx=y8oNKV}**^=E zoeOK&-1NzZ^0^Ai^}-*bH#vwTS?6S#;mF|UyTNGzYOkt{ybd9ld2j4)xpFORE9NJV z&?{{u+I@R{w5>HXEH=s06^3DhX~XDRI1Z$VM10P9$nruS#2}d<4gXPt<(6W1-Xa5si1vKwG-+gwYT(e6*mr*e20VAgN`1Iv5gVDaz0rqB^}o7t|?hL*smolgOg zY?!?B=4|#tL0M~t&xNCSCC$%l(;RgUggkAP5+9ZBZ;CwxAXD%k3y#H2wb`YtsF45i z5@p$9lHNQ#drqzg{#VIN$~>`@jLi+yR$$4Ki~8D0ar=M0H7MvG2SV!c-&11~dn4oE zu#ZXoA@c#Wxq|j;F{|Y5MW^JXD!ktNSNq}0-pi{N9IO?{3RydQ_}gByLf{m*KVaQ= z1qBon{>EfnT?Mdnc)hLr;7#ANyBxRPB?zN!_`W+tT!xswbgC7T0wuU{kB)u`C5aJI zl=U$Qd4ZY@hp)EdB4Ijew(ZpECVdGa2^61GVxm7(m6s&*aB1zSRQZaL0U;+2UA^UA z2b6qn>oE^PvqH*UuS2&l;7PLh$JXWQwR@=n#Og}--il^w*;9Rmli>qicK~xWf)SB` zt#(cR5q3ruC1C^M-l#*Jv3$n4aXHAl+TcavxTx5rc)bR(Wh?ENHKJ{|n&hW|O`Vh! z;{7i_r6GwtP1B<>hYj+AF$)Dq@Cd=d^Vsw{2Om!447YUY<-sR1jJs2kw=AP&qmL+M zg{6#`3CDhx{9X~_Teod|7+zN-CCQgI6 zqgu1mFG~$mCr;wx0<`l-Ad>x(kXSwYkCpWh+EDCjUKaw?aHla~5 z_JgxVev(^X&1Bz?A8MM~y^Ou!ol8n;+L~STKJGPG%4KuT5dzUYkq<7#i(%*B)+E$5 z`oBlbo9TU7QNQcewVo9L^01tk$_uv!ev>?Z_N;(nlnT+LhUg!zB5%LsL~7bvxb~dH zT{w_23*6QP?WuV-iAT1+$iWq9m=KpEhY_$h6R3QT{}g%`1GE%>^!v>H(iguPfPAa7 z!NMa7{t?;rMpYAR*)W2WE|<+#T>07%vn|n?o3Q8Iz1$&Vqnwf3Z9=6t*YWVQ)+O{zuV!G@i!^5)735oFZydQ<}bnUzdtyWM+vW0F*46L zsw+yGt+krnl{$An9Cu0tjcdKlQIw-(G%CvVVr<^~?rz-A3|W@Dez02k&mP^-FT@X0 z5_~4PV(|^UZM(#;QEC!D?>ar2Z@UKf>}4-{0Hdt)9qw1Coun{IuoZgYr;OT#ZqlM- z?NI*68h)j8E3%e2SKh+ZZQhzt$j}NDa?P7u!}mCVAQggt0#~lr!q*x*^4<rm|EH-y^Ws9;>P7y{N*f!GldA?NC7$|tE zYO5P27i`N;DG`E1T=4x{8L05A3f$H3MU^bZSl4dbK;zdfOYjk?$X0lm{Z0*HknO&x zpPOne)|e+75fXxEAetc2AW&a_Kic-Fa?}0^ z1pT)QWm=-CbGcIs8<3u6k#ZSQbiv#13WPtdB5#zOD16l9l<2QlmZ2|O4z^mp3cS6} zI?r*e34UWY8SIVby=}TOUNZl9est(iHy=lvYF|U4MP3J%sJnJG8!d zEc7pSrsiLhQ-V1 zP#^ln{qW7LtOZ*pL3q42DB-GIse7NZK!6lvrMKj>>)6WYW?wXFz847(!`TrMbqX$$ zG!Cg4TN})rl6^ZT?QVDzgTtj}VWm6cz@eMUz{ZFvkgSwZh;^%)d}feJPi;uzWpjg~ z-x|MDr3k#$?VO>FxXcd?ATS9$vAMH0eI1Q?wasn&6d8DN@9A9DTP_nP6A@|K2f&n- z*C5%ZQr;cE>Dty1s#X6aJUlahOL%t%L9X4~H=8-erj9)Y;Xv8Rt3(}kr(;JRX^Dj| zEi`{cFcc8!hFrAnkm8bZrJ)AjG<`2DPEqRVk9zEW7Tzzh(lrzGkJ)BnQuO(Ko>ELP3q4mNJYCY^i-oN)%B6MD%FQ!{L?6&|n z!A9gHtsVa4nV8?n`qm+U^VeSMH8G~VPs*r?G~1dRv$tr-v$1N(cZ=b8i6^oxDzid-fwPv{-)!{JQDhM_IS|l zhCWH#DcY@7WguPs^xomp6JHa>5^P20wdy!Fl{PF{Sy@@~tYoW&K~vr=oY_6=r|$QB zu;WRs<=UH9x5(VdDKbV-{udU-9S1b(W_y^)p{11e%?GPlS@}5mXror&7H2%jV^D^` z;|kE&^(wt4!}fb3P6(hOb+4`}7O!~HEnW6C>3g-!t-ssYN=vRh*B3U(mQ{!jwy;m? zt8$n^{9<`425wX5Ar2%`#r_Pog*M6hSXB_ocdXH$uBAWcIk+O@-^;TkjJVyLiEN%VI zF2l&dzDGrQOaxieT*KRzc_ys^4HVD*t!Sgh`iI|%p*&bq`}h2@bgz~z8OGmp%76rk zQpNPRY_2~pMuJPI(KjKBgRGedI$tKOJ5ncTQF3cq$qlM1g0ho1wes_7>YT1U`3yjz z{$0_zrp`zcv&ZRh*Q1NkDk>+o1`;b=x1ocLXWE*1nT-nQ3f2=s`zum+J-uC zx@=b1KIiov^zmx}_gtDT*;!R+h}=q^&lE?8fB~Xks$pN|j7ryEm|U70n__i^`A8rb z+vSveFoS8Aip`&fS(*&8=H_H;ic)^HM$%U+2R1%l6u-};>qK;al9lWENpK4{nTPcQ zm^uiWUDowCn#IT@USNyo;%W^3ZO#~Jp|wCTQ9r8KonA0x3zPEcSj+H?EW~=Q=yZ#z zl?{>-s$lnx;06C@O;@~%Xwuv(a&h8?&ThxrUT>8-7v@fios-LhnYQ!LD|^&IKIwD0 z8OKkF{{n~1s_RfUBCVl$;GRNX=J@m@04m`nv$D5E`~~D7{P-W-Oj2NTJC8;4_uuq3 zYj!6jTHkqN3V<55WrMAYXSGmM^tMH7ou&L?c+Ku_VOEOHQ!y(y;#AdIywK#9ofC-N z?Q;CHz=B6no(aOClueUela`H2|A|XBA-d$G$%2QqmU@`W5uIE=QIt5ez9!lg+2>zB z*Tl+Pw`3%soU;;cGA7|1pNJBa;e)Q-u9n@ST5HJa@R{sM))))GhXdC>+}xf zbdg;)&Xe%LkHzix(>HjhI{(;1;2Q6}et4p-s6?L9_zS$(x25C1$ZM+szvDw3Y9r@? zJj__)a$K+CE`$xbTbf~_K<0bJWJHRlMU#2Mbmnev3WVctjG;I<9650PfW6q+ciIQQ z3TKhYT#vk(2#V@Ey(WOa)FI;Genz2Kp>dZ|dj@4(Rq;KGDiYDC7(APHaj9xzE{V&I zd>M$W^?-lra=saEQDzh(WFQH-?X0~gRF2irFC0pX<14qa`lK>6zjXW!0D10&hOgw0 zpf#WLYl9NdchJA6`)&D7zqya#2}d1qFpC=J4@18Dy1rW~zi z<$-C3>Thyv!*1ucNhNwzq#2Txu=%6ppFI^Hzhs?~NQ(xda;)zy`SJvj7*w M$l^ws!M&IN157_b;s5{u diff --git "a/EOM.TSHotelManagement.FormUI/Resources/\346\200\273\347\273\217\345\212\236\345\215\241\347\211\207.png" "b/EOM.TSHotelManagement.FormUI/Resources/\346\200\273\347\273\217\345\212\236\345\215\241\347\211\207.png" deleted file mode 100644 index 28bfeee18ae3cbb9280c9a26f211932c05b25ef8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 54090 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 diff --git "a/EOM.TSHotelManagement.FormUI/Resources/\346\227\251\344\270\212.png" "b/EOM.TSHotelManagement.FormUI/Resources/\346\227\251\344\270\212.png" deleted file mode 100644 index 31509299647b539898ced35b971c5e67e0fdc02a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 557 zcmV+|0@D47P)Nkl%-6o#L(OG2xO6&5x$T2dKfB9ulJE+!Ieh%*>FqP>O7FCd{4T`tDN7%X-c8?As? zU}Guz1FVdwvC)P(W~3b39n8jLZh7aP^FH@I=iCv7ykyAwlmMjz|E~jT%_Cqk zoFbn+S@PQ}E-R)HvA|W2@>)+a}}aONR!4;brdzp_q+^(2T| z6TB4-kl)Fh_bfr0er7?O?Uy0Y=e+a zGvid{ImqSy!~i>-CW_M5*a$0100000NkvXXu0mjftxo~n diff --git "a/EOM.TSHotelManagement.FormUI/Resources/\346\231\256\351\200\232\344\274\232\345\221\230.png" "b/EOM.TSHotelManagement.FormUI/Resources/\346\231\256\351\200\232\344\274\232\345\221\230.png" deleted file mode 100644 index 4f89f6582c7cca0b463b577cdc4be568c5c23bb6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7916 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 diff --git "a/EOM.TSHotelManagement.FormUI/Resources/\346\243\200\346\237\245\346\233\264\346\226\260 (1).png" "b/EOM.TSHotelManagement.FormUI/Resources/\346\243\200\346\237\245\346\233\264\346\226\260 (1).png" deleted file mode 100644 index 84b0766bda0cb7da6ad7980e5ebb7a0662027b06..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 804 zcmV+<1Ka$GP)K_jRj_zy)J z35X#9D=}iF7zz4jO%4nQDk&@!EL7OHBQM;^db!K)9!L=KV7X)Oz4?Cg&Aj0V^So%D z^|1i(e>vc~?pgp_0Bi)XQbd*m_yOPzfFcn+)mjgw>8nHzIF6G8aEyo!R|KCTqMst- zMBYCKaF3a9Cjp5Cu;Q6aW-ubsZ!ag-1+Wi5Gk_sx-c^QB zO7+?A%slg1UULFO#fj)8fF7;2o+~q@lr78I6391ZZdOWd1~3ZX88de!0;tHmzmh!8 zUdM3;i0C+g5dfF!0k~eO`4ls+iW98%yW==_i0Gh*^bpa_#17bQ7m+a=l!&%ztsmC| zkj-Y>8X6i#iKwk~K3NG|*F7pCR{^B9-U=zDY`vq)_JCc<0F+V>0qnL9Ge1h3y;4eQ zoEc%}9kEU5x-N^z8UR^lo~i?&obg{r8yg$_@$vC5u>hqE#+Z3sTJf~|V+T>%fYtUZ zrR)q@&&;#*{yBi>dCQD3?*V*b=GB#evjEC>w^}CEGKh01pU-!PVfciIhPBo^V*yH6 z=+Cu@9;h6napI*b*$dzz5uMappHBnuOGKuPF2t-#=6jfKqB0z;+S2;rsrPYB6T@K%@j+M07?(HUYT6%qP-7D5XvV z=p!OO48uLX@4rh80H6uL0|1My6GU{1nLo}2;=1lu5xHXjF~y17IMp2J6Ok2V+da=K z7-Oyh*Z|-wfcqjc7zDxFVzKz$2Fd61Enyhiq19=#o(UY2c{zzhbD*Q6V@VJM=Kvf4 zuqfg{QACJ{+M}-6ngh68%l6n&T+3q5^V*Fu`vG(VSPG!UmZ!A;Gk{w}G*YeGYsF0D iK$_-DyLSO#!GYgl9!4;CrDQn(00007dQh(dPKn0k9HSWEVIK9PQ0z>Hs(m zEViI$fF=JMz)fJL1-%8#`d0u31LFY&@sa~D0~igw1+M3Sm8D=QaKaoM239*~DFCB@ z7fx>(a54oV2fzmp_Tzx3_D>4HMqqaoFbN_BV0Hm@7l4Ho7#Ln{w?T>k>;g8G1TO=i^FhGpDBfD&kpC6~=nuRB^gGBr z;Br9`RcS-Dsq})}0jB2wtO8W+LAC?ki3+X)K&D3`>Kh6&X5dsb(dGhIY64gj(S8wF z5PZe}?gNuuz+9VFWkBwJJD(4MNhtvDf#G(jzdIAR*Jq_>o1N!UC6#x;2-E%GVl=&m zKY>1`*imGqnQ9|8Oh<30MMS`wq--bDLaFU2B?2TLN?S^90CQ4@WdLNSK2~A2I+VU! z!JW^gtO@|x53&5ME6IO2J_x9eK9%WL1rYq`LD5^T1#_tV=&Ah(=#{$$Tm|lx1rFz} h0;uY@vR>N(`~i2Rhat5;83F(R002ovPDHLkV1m9QL*xJe diff --git "a/EOM.TSHotelManagement.FormUI/Resources/\347\231\275\351\207\221\344\274\232\345\221\230.png" "b/EOM.TSHotelManagement.FormUI/Resources/\347\231\275\351\207\221\344\274\232\345\221\230.png" deleted file mode 100644 index 17ca731aa33ae297afa79dce3af3f19ae558e5ae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5609 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