From f3214dada4dcbc1fdc3e7b808a1213d3f3719631 Mon Sep 17 00:00:00 2001 From: Chunkit Yeung Date: Sun, 24 Mar 2024 23:37:20 +0800 Subject: [PATCH 1/2] move Util Layer to EOM solution --- .../EOM.TSHotelManager.Common.Core.csproj | 2 +- .../EOM.TSHotelManager.Common.Util.csproj | 7 +++ .../Validator/NeedValidAttribute.cs | 13 +++++ .../Validator/ValidateHelper.cs | 57 +++++++++++++++++++ EOM.TSHotelManager.Web.sln | 6 ++ 5 files changed, 84 insertions(+), 1 deletion(-) create mode 100644 EOM.TSHotelManager.Common.Util/EOM.TSHotelManager.Common.Util.csproj create mode 100644 EOM.TSHotelManager.Common.Util/Validator/NeedValidAttribute.cs create mode 100644 EOM.TSHotelManager.Common.Util/Validator/ValidateHelper.cs diff --git a/EOM.TSHotelManager.Common.Core/EOM.TSHotelManager.Common.Core.csproj b/EOM.TSHotelManager.Common.Core/EOM.TSHotelManager.Common.Core.csproj index af07239..227c029 100644 --- a/EOM.TSHotelManager.Common.Core/EOM.TSHotelManager.Common.Core.csproj +++ b/EOM.TSHotelManager.Common.Core/EOM.TSHotelManager.Common.Core.csproj @@ -10,7 +10,7 @@ - + diff --git a/EOM.TSHotelManager.Common.Util/EOM.TSHotelManager.Common.Util.csproj b/EOM.TSHotelManager.Common.Util/EOM.TSHotelManager.Common.Util.csproj new file mode 100644 index 0000000..dbdcea4 --- /dev/null +++ b/EOM.TSHotelManager.Common.Util/EOM.TSHotelManager.Common.Util.csproj @@ -0,0 +1,7 @@ + + + + netstandard2.0 + + + diff --git a/EOM.TSHotelManager.Common.Util/Validator/NeedValidAttribute.cs b/EOM.TSHotelManager.Common.Util/Validator/NeedValidAttribute.cs new file mode 100644 index 0000000..1b1e088 --- /dev/null +++ b/EOM.TSHotelManager.Common.Util/Validator/NeedValidAttribute.cs @@ -0,0 +1,13 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace EOM.TSHotelManager.Common.Util +{ + [AttributeUsage(AttributeTargets.Property)] + public class NeedValidAttribute : Attribute + { + } +} diff --git a/EOM.TSHotelManager.Common.Util/Validator/ValidateHelper.cs b/EOM.TSHotelManager.Common.Util/Validator/ValidateHelper.cs new file mode 100644 index 0000000..94cf3ca --- /dev/null +++ b/EOM.TSHotelManager.Common.Util/Validator/ValidateHelper.cs @@ -0,0 +1,57 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Reflection; +using System.Text; +using System.Threading.Tasks; + +namespace EOM.TSHotelManager.Common.Util +{ + public static class ValidateHelper + { + public static bool Validate(object obj) + { + Type type = obj.GetType(); + + // 遍历所有属性 + foreach (PropertyInfo property in type.GetProperties(BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance)) + { + // 检查属性是否具有 NeedValid 特性 + if (Attribute.IsDefined(property, typeof(NeedValidAttribute))) + { + // 获取属性的值 + object value = property.GetValue(obj); + + // 根据不同的类型进行校验 + if (value is string strValue && string.IsNullOrEmpty(strValue)) + { + return false; + } + else if (value is int intValue && intValue < 0) + { + return false; + } + else if (value is decimal decValue && decValue < 0) + { + return false; + } + else if (value is double doubleValue && doubleValue < 0) + { + return false; + } + else if (value is float floatValue && floatValue < 0) + { + return false; + } + else if (value is DateTime dateTimeValue && dateTimeValue == default) + { + return false; + } + } + } + + // 如果所有校验均通过 + return true; + } + } +} diff --git a/EOM.TSHotelManager.Web.sln b/EOM.TSHotelManager.Web.sln index ad60089..ba38788 100644 --- a/EOM.TSHotelManager.Web.sln +++ b/EOM.TSHotelManager.Web.sln @@ -13,6 +13,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Library", "Library\Library. EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "EOM.TSHotelManager.Common.Core", "EOM.TSHotelManager.Common.Core\EOM.TSHotelManager.Common.Core.csproj", "{D99F4527-C620-4073-92B1-254A6C7FA363}" EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "EOM.TSHotelManager.Common.Util", "EOM.TSHotelManager.Common.Util\EOM.TSHotelManager.Common.Util.csproj", "{4D8B62E1-2D40-47E6-912D-D7B08F3F031A}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -39,6 +41,10 @@ Global {D99F4527-C620-4073-92B1-254A6C7FA363}.Debug|Any CPU.Build.0 = Debug|Any CPU {D99F4527-C620-4073-92B1-254A6C7FA363}.Release|Any CPU.ActiveCfg = Release|Any CPU {D99F4527-C620-4073-92B1-254A6C7FA363}.Release|Any CPU.Build.0 = Release|Any CPU + {4D8B62E1-2D40-47E6-912D-D7B08F3F031A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {4D8B62E1-2D40-47E6-912D-D7B08F3F031A}.Debug|Any CPU.Build.0 = Debug|Any CPU + {4D8B62E1-2D40-47E6-912D-D7B08F3F031A}.Release|Any CPU.ActiveCfg = Release|Any CPU + {4D8B62E1-2D40-47E6-912D-D7B08F3F031A}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE -- Gitee From b426cbcee74f5c0adebcde4d3a761591eb206c6b Mon Sep 17 00:00:00 2001 From: Chunkit Yeung Date: Sun, 12 May 2024 22:54:52 +0800 Subject: [PATCH 2/2] =?UTF-8?q?1=E3=80=81update=20nuget=202=E3=80=81update?= =?UTF-8?q?=20sunnyUI=203=E3=80=81replace=20checking=20method=204=E3=80=81?= =?UTF-8?q?add=20global=20checking=20util?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Business/Room/RoomTypeService.cs | 2 +- EOM.TSHotelManager.Common.Core/Business/Cash/Cash.cs | 9 +++++++++ EOM.TSHotelManager.Common.Core/Business/Room/Room.cs | 7 +++++++ EOM.TSHotelManager.Common.Core/Zero/Admin.cs | 7 +++++++ .../EOM.TSHotelManager.EntityFramework.csproj | 2 +- 5 files changed, 25 insertions(+), 2 deletions(-) diff --git a/EOM.TSHotelManager.Application/Business/Room/RoomTypeService.cs b/EOM.TSHotelManager.Application/Business/Room/RoomTypeService.cs index d57afc0..2112e37 100644 --- a/EOM.TSHotelManager.Application/Business/Room/RoomTypeService.cs +++ b/EOM.TSHotelManager.Application/Business/Room/RoomTypeService.cs @@ -86,7 +86,7 @@ namespace EOM.TSHotelManager.Application RoomType roomtype = new RoomType(); Room room = new Room(); room = roomRepository.GetSingle(a => a.RoomNo == no && a.delete_mk != 1); - roomtype.RoomName = roomTypeRepository.GetSingle(a => a.Roomtype == room.RoomStateId).RoomName; + roomtype.RoomName = roomTypeRepository.GetSingle(a => a.Roomtype == room.RoomType).RoomName; return roomtype; } #endregion diff --git a/EOM.TSHotelManager.Common.Core/Business/Cash/Cash.cs b/EOM.TSHotelManager.Common.Core/Business/Cash/Cash.cs index 2184fa3..02fe1b2 100644 --- a/EOM.TSHotelManager.Common.Core/Business/Cash/Cash.cs +++ b/EOM.TSHotelManager.Common.Core/Business/Cash/Cash.cs @@ -22,6 +22,7 @@ * *模块说明:资产类 */ +using EOM.TSHotelManager.Common.Util; using System; namespace EOM.TSHotelManager.Common.Core { @@ -34,23 +35,28 @@ namespace EOM.TSHotelManager.Common.Core /// /// 资产编号 /// + [NeedValid] public string CashNo { get; set; } /// /// 资产名称 /// + [NeedValid] public string CashName { get; set; } /// /// 资产总值 /// + [NeedValid] public decimal CashPrice { get; set; } /// /// 资产总值描述 /// [SqlSugar.SugarColumn(IsIgnore = true)] + [NeedValid] public string CashPriceStr { get; set; } /// /// 所属部门 /// + [NeedValid] public string CashClub { get; set; } /// /// 所属部门描述 @@ -60,14 +66,17 @@ namespace EOM.TSHotelManager.Common.Core /// /// 入库时间 /// + [NeedValid] public DateTime CashTime { get; set; } /// /// 资产来源 /// + [NeedValid] public string CashSource { get; set; } /// /// 资产经办人 /// + [NeedValid] public string CashPerson { get; set; } /// /// 资产经办人 diff --git a/EOM.TSHotelManager.Common.Core/Business/Room/Room.cs b/EOM.TSHotelManager.Common.Core/Business/Room/Room.cs index e5c8e8d..b49e672 100644 --- a/EOM.TSHotelManager.Common.Core/Business/Room/Room.cs +++ b/EOM.TSHotelManager.Common.Core/Business/Room/Room.cs @@ -22,6 +22,7 @@ * *模块说明:房间类 */ +using EOM.TSHotelManager.Common.Util; using System; //using System.ComponentModel.DataAnnotations.Schema; @@ -37,11 +38,13 @@ namespace EOM.TSHotelManager.Common.Core /// 房间编号 /// [SqlSugar.SugarColumn(ColumnName = "room_no", IsPrimaryKey = true)] + [NeedValid] public string RoomNo { get; set; } /// /// 房间类型 /// [SqlSugar.SugarColumn(ColumnName = "room_type")] + [NeedValid] public int RoomType { get; set; } /// /// 客户编号 @@ -67,6 +70,7 @@ namespace EOM.TSHotelManager.Common.Core /// 房间状态ID /// [SqlSugar.SugarColumn(ColumnName = "room_state_id")] + [NeedValid] public int RoomStateId { get; set; } /// /// 房间状态 @@ -77,16 +81,19 @@ namespace EOM.TSHotelManager.Common.Core /// 房间单价 /// [SqlSugar.SugarColumn(ColumnName = "room_rent")] + [NeedValid] public decimal RoomMoney { get; set; } /// /// 房间押金 /// [SqlSugar.SugarColumn(ColumnName = "room_deposit")] + [NeedValid] public decimal RoomDeposit { get; set; } /// /// 房间位置 /// [SqlSugar.SugarColumn(ColumnName = "room_position")] + [NeedValid] public string RoomPosition { get; set; } /// /// 客户类型名称 diff --git a/EOM.TSHotelManager.Common.Core/Zero/Admin.cs b/EOM.TSHotelManager.Common.Core/Zero/Admin.cs index 4b1b7ae..2f65d52 100644 --- a/EOM.TSHotelManager.Common.Core/Zero/Admin.cs +++ b/EOM.TSHotelManager.Common.Core/Zero/Admin.cs @@ -22,6 +22,8 @@ * *模块说明:管理员实体类 */ +using EOM.TSHotelManager.Common.Util; + namespace EOM.TSHotelManager.Common.Core { /// @@ -47,30 +49,35 @@ namespace EOM.TSHotelManager.Common.Core /// 管理员账号 /// [SqlSugar.SugarColumn(IsPrimaryKey = true)] + [NeedValid] public string AdminAccount { get { return this._AdminAccount; } set { this._AdminAccount = value; } } private string _AdminPassword; /// /// 管理员密码 /// + [NeedValid] public string AdminPassword { get { return this._AdminPassword; } set { this._AdminPassword = value; } } private string _AdminType; /// /// 管理员类型 /// + [NeedValid] public string AdminType { get { return this._AdminType; } set { this._AdminType = value; } } private string _AdminName; /// /// 管理员名称 /// + [NeedValid] public string AdminName { get { return this._AdminName; } set { this._AdminName = value; } } private System.Int32 _IsAdmin; /// /// 是否为超级管理员 /// + [NeedValid] public System.Int32 IsAdmin { get { return this._IsAdmin; } set { this._IsAdmin = value; } } private System.Int32 _DeleteMk; diff --git a/EOM.TSHotelManager.EntityFramework/EOM.TSHotelManager.EntityFramework.csproj b/EOM.TSHotelManager.EntityFramework/EOM.TSHotelManager.EntityFramework.csproj index 4dcc7d4..e5fbd4a 100644 --- a/EOM.TSHotelManager.EntityFramework/EOM.TSHotelManager.EntityFramework.csproj +++ b/EOM.TSHotelManager.EntityFramework/EOM.TSHotelManager.EntityFramework.csproj @@ -8,7 +8,7 @@ - + -- Gitee