From c8b6903d85e7ceef504a198b4bdfc6b72a73fe19 Mon Sep 17 00:00:00 2001 From: sunpengfei <i@angelzzz.com> Date: 星期五, 08 八月 2025 13:29:47 +0800 Subject: [PATCH] fix:bug --- FlexJobApi.Core/Enums/Common/EnumSmsTemplateType.cs | 35 FlexJobApi.Core/Entities/Common/Resource.cs | 2 FlexJobApi.Core/Utils/ResourceUtils/ResourceUtils.cs | 19 FlexJobApi.Database.Migrations/Migrations/20250808051314_UpdateResource0808.Designer.cs | 1996 +++++++++++++++++++++++++++++++++++++ FlexJobApi.Core/Models/FlexJobServer/Tasks/Repositories/TaskInfoRepository.cs | 13 FlexJobApi.FlexJobServer.Application/Tasks/Queries/TaskInfoQueryHandler.cs | 7 FlexJobApi.Core/Models/UserServer/Auths/Commands/SmsLoginCommand.cs | 36 FlexJobApi.Core/Models/UserServer/Auths/Commands/SendVerifyCodeCommand.cs | 25 FlexJobApi.Core/Utils/DbUtils/DbUtils.cs | 6 FlexJobApi.Core/Models/UserServer/Auths/Commands/WxmpLoginCommand.cs | 21 FlexJobApi.Core/Models/UserServer/Auths/Commands/WxmpRegisterCommand.cs | 26 FlexJobApi.Database.Migrations/Migrations/20250808051314_UpdateResource0808.cs | 54 + FlexJobApi.Core/FlexJobApi.Core.xml | 837 ++++++++------- FlexJobApi.Core/Models/FlexJobServer/Tasks/Queries/GetTaskInfosQuery.cs | 4 FlexJobApi.UserServer.Application/Auths/Commands/VerifyCodeCommandHandler.cs | 39 FlexJobApi.UserServer.Application/FlexJobApi.UserServer.Application.xml | 13 FlexJobApi.Database.Migrations/REDEME.MD | 2 FlexJobApi.Database.Migrations/Migrations/DefaultDbContextModelSnapshot.cs | 2 18 files changed, 2,744 insertions(+), 393 deletions(-) diff --git a/FlexJobApi.Core/Entities/Common/Resource.cs b/FlexJobApi.Core/Entities/Common/Resource.cs index a412a53..e5d201a 100644 --- a/FlexJobApi.Core/Entities/Common/Resource.cs +++ b/FlexJobApi.Core/Entities/Common/Resource.cs @@ -102,13 +102,11 @@ /// <summary> /// 鍝嶅簲绫诲瀷鍚嶇О /// </summary> - [Required] public string ResponseTypeName { get; set; } /// <summary> /// 鍝嶅簲绫诲瀷鍏ㄥ悕 /// </summary> - [Required] public string ResponseTypeFullName { get; set; } /// <summary> diff --git a/FlexJobApi.Core/Enums/Common/EnumSmsTemplateType.cs b/FlexJobApi.Core/Enums/Common/EnumSmsTemplateType.cs new file mode 100644 index 0000000..b51658c --- /dev/null +++ b/FlexJobApi.Core/Enums/Common/EnumSmsTemplateType.cs @@ -0,0 +1,35 @@ +锘縰sing System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace FlexJobApi.Core +{ + /// <summary> + /// 鐭俊妯℃澘绫诲瀷 + /// </summary> + public enum EnumSmsTemplateType + { + /// <summary> + /// 鐧诲綍 + /// </summary> + Login, + /// <summary> + /// 娉ㄥ唽 + /// </summary> + Register, + /// <summary> + /// 淇敼瀵嗙爜 + /// </summary> + UpdatePassword, + /// <summary> + /// 缁戝畾鎵嬫満鍙风爜 + /// </summary> + BindPhoneNumber, + /// <summary> + /// 淇敼鎵嬫満鍙风爜 + /// </summary> + UpdatePhoneNumber + } +} diff --git a/FlexJobApi.Core/FlexJobApi.Core.xml b/FlexJobApi.Core/FlexJobApi.Core.xml index 161a24d..e7c1016 100644 --- a/FlexJobApi.Core/FlexJobApi.Core.xml +++ b/FlexJobApi.Core/FlexJobApi.Core.xml @@ -179,156 +179,6 @@ 鏄惁绂佺敤 </summary> </member> - <member name="T:FlexJobApi.Core.Resource"> - <summary> - 璧勬簮 - </summary> - </member> - <member name="P:FlexJobApi.Core.Resource.ApplicationName"> - <summary> - 搴旂敤鍚嶇О - </summary> - </member> - <member name="P:FlexJobApi.Core.Resource.DynamicAssemblyName"> - <summary> - 鍔ㄦ�佺▼搴忛泦鍚嶇О - </summary> - </member> - <member name="P:FlexJobApi.Core.Resource.Service"> - <summary> - 鏈嶅姟 - </summary> - </member> - <member name="P:FlexJobApi.Core.Resource.ServiceName"> - <summary> - 鏈嶅姟鍚嶇О - </summary> - </member> - <member name="P:FlexJobApi.Core.Resource.Controller"> - <summary> - 鎺у埗鍣� - </summary> - </member> - <member name="P:FlexJobApi.Core.Resource.ControllerSummary"> - <summary> - 鎺у埗鍣ㄦ憳瑕� - </summary> - </member> - <member name="P:FlexJobApi.Core.Resource.ActionName"> - <summary> - 濮旀墭鍚嶇О - </summary> - </member> - <member name="P:FlexJobApi.Core.Resource.ActionSummary"> - <summary> - 濮旀墭鎽樿 - </summary> - </member> - <member name="P:FlexJobApi.Core.Resource.Code"> - <summary> - 缂栧彿 - </summary> - </member> - <member name="P:FlexJobApi.Core.Resource.Name"> - <summary> - 鍚嶇О - </summary> - </member> - <member name="P:FlexJobApi.Core.Resource.AllowAnonymous"> - <summary> - 蹇界暐鏉冮檺 - </summary> - </member> - <member name="P:FlexJobApi.Core.Resource.Method"> - <summary> - 璇锋眰鏂瑰紡 - </summary> - </member> - <member name="P:FlexJobApi.Core.Resource.RouteArea"> - <summary> - 璺敱鍖哄煙 - </summary> - </member> - <member name="P:FlexJobApi.Core.Resource.Route"> - <summary> - 璺敱 - </summary> - </member> - <member name="P:FlexJobApi.Core.Resource.RequestTypeName"> - <summary> - 璇锋眰绫诲瀷鍚嶇О - </summary> - </member> - <member name="P:FlexJobApi.Core.Resource.RequestTypeFullName"> - <summary> - 璇锋眰绫诲瀷鍏ㄥ悕 - </summary> - </member> - <member name="P:FlexJobApi.Core.Resource.ResponseTypeName"> - <summary> - 鍝嶅簲绫诲瀷鍚嶇О - </summary> - </member> - <member name="P:FlexJobApi.Core.Resource.ResponseTypeFullName"> - <summary> - 鍝嶅簲绫诲瀷鍏ㄥ悕 - </summary> - </member> - <member name="P:FlexJobApi.Core.Resource.IsExpired"> - <summary> - 鏄惁宸茶繃鏈� - </summary> - </member> - <member name="T:FlexJobApi.Core.BaseArea"> - <summary> - 鍦板尯 - </summary> - </member> - <member name="P:FlexJobApi.Core.BaseArea.ParentId"> - <summary> - 涓婄骇鍦板尯缂栧彿 - </summary> - </member> - <member name="P:FlexJobApi.Core.BaseArea.AreaCode"> - <summary> - 鍦板尯缂栧彿 - </summary> - </member> - <member name="P:FlexJobApi.Core.BaseArea.AreaName"> - <summary> - 鍦板尯鍚嶇О - </summary> - </member> - <member name="P:FlexJobApi.Core.BaseArea.QuickQuery"> - <summary> - 蹇嵎鏌ヨ - </summary> - </member> - <member name="P:FlexJobApi.Core.BaseArea.Description"> - <summary> - 鎻忚堪 - </summary> - </member> - <member name="P:FlexJobApi.Core.BaseArea.Layer"> - <summary> - 灞傜骇 - </summary> - </member> - <member name="P:FlexJobApi.Core.BaseArea.Sort"> - <summary> - 鎺掑簭 - </summary> - </member> - <member name="P:FlexJobApi.Core.BaseArea.SimpleSpelling"> - <summary> - 绠�鎷� - </summary> - </member> - <member name="P:FlexJobApi.Core.BaseArea.IsEnable"> - <summary> - 鏄惁鍚敤 - </summary> - </member> <member name="T:FlexJobApi.Core.ConsoleLog"> <summary> 鎺у埗鍙版棩蹇� @@ -542,6 +392,156 @@ <member name="P:FlexJobApi.Core.SmsLog.IsUsed"> <summary> 鏄惁浣跨敤 + </summary> + </member> + <member name="T:FlexJobApi.Core.Resource"> + <summary> + 璧勬簮 + </summary> + </member> + <member name="P:FlexJobApi.Core.Resource.ApplicationName"> + <summary> + 搴旂敤鍚嶇О + </summary> + </member> + <member name="P:FlexJobApi.Core.Resource.DynamicAssemblyName"> + <summary> + 鍔ㄦ�佺▼搴忛泦鍚嶇О + </summary> + </member> + <member name="P:FlexJobApi.Core.Resource.Service"> + <summary> + 鏈嶅姟 + </summary> + </member> + <member name="P:FlexJobApi.Core.Resource.ServiceName"> + <summary> + 鏈嶅姟鍚嶇О + </summary> + </member> + <member name="P:FlexJobApi.Core.Resource.Controller"> + <summary> + 鎺у埗鍣� + </summary> + </member> + <member name="P:FlexJobApi.Core.Resource.ControllerSummary"> + <summary> + 鎺у埗鍣ㄦ憳瑕� + </summary> + </member> + <member name="P:FlexJobApi.Core.Resource.ActionName"> + <summary> + 濮旀墭鍚嶇О + </summary> + </member> + <member name="P:FlexJobApi.Core.Resource.ActionSummary"> + <summary> + 濮旀墭鎽樿 + </summary> + </member> + <member name="P:FlexJobApi.Core.Resource.Code"> + <summary> + 缂栧彿 + </summary> + </member> + <member name="P:FlexJobApi.Core.Resource.Name"> + <summary> + 鍚嶇О + </summary> + </member> + <member name="P:FlexJobApi.Core.Resource.AllowAnonymous"> + <summary> + 蹇界暐鏉冮檺 + </summary> + </member> + <member name="P:FlexJobApi.Core.Resource.Method"> + <summary> + 璇锋眰鏂瑰紡 + </summary> + </member> + <member name="P:FlexJobApi.Core.Resource.RouteArea"> + <summary> + 璺敱鍖哄煙 + </summary> + </member> + <member name="P:FlexJobApi.Core.Resource.Route"> + <summary> + 璺敱 + </summary> + </member> + <member name="P:FlexJobApi.Core.Resource.RequestTypeName"> + <summary> + 璇锋眰绫诲瀷鍚嶇О + </summary> + </member> + <member name="P:FlexJobApi.Core.Resource.RequestTypeFullName"> + <summary> + 璇锋眰绫诲瀷鍏ㄥ悕 + </summary> + </member> + <member name="P:FlexJobApi.Core.Resource.ResponseTypeName"> + <summary> + 鍝嶅簲绫诲瀷鍚嶇О + </summary> + </member> + <member name="P:FlexJobApi.Core.Resource.ResponseTypeFullName"> + <summary> + 鍝嶅簲绫诲瀷鍏ㄥ悕 + </summary> + </member> + <member name="P:FlexJobApi.Core.Resource.IsExpired"> + <summary> + 鏄惁宸茶繃鏈� + </summary> + </member> + <member name="T:FlexJobApi.Core.BaseArea"> + <summary> + 鍦板尯 + </summary> + </member> + <member name="P:FlexJobApi.Core.BaseArea.ParentId"> + <summary> + 涓婄骇鍦板尯缂栧彿 + </summary> + </member> + <member name="P:FlexJobApi.Core.BaseArea.AreaCode"> + <summary> + 鍦板尯缂栧彿 + </summary> + </member> + <member name="P:FlexJobApi.Core.BaseArea.AreaName"> + <summary> + 鍦板尯鍚嶇О + </summary> + </member> + <member name="P:FlexJobApi.Core.BaseArea.QuickQuery"> + <summary> + 蹇嵎鏌ヨ + </summary> + </member> + <member name="P:FlexJobApi.Core.BaseArea.Description"> + <summary> + 鎻忚堪 + </summary> + </member> + <member name="P:FlexJobApi.Core.BaseArea.Layer"> + <summary> + 灞傜骇 + </summary> + </member> + <member name="P:FlexJobApi.Core.BaseArea.Sort"> + <summary> + 鎺掑簭 + </summary> + </member> + <member name="P:FlexJobApi.Core.BaseArea.SimpleSpelling"> + <summary> + 绠�鎷� + </summary> + </member> + <member name="P:FlexJobApi.Core.BaseArea.IsEnable"> + <summary> + 鏄惁鍚敤 </summary> </member> <member name="T:FlexJobApi.Core.TaskInfo"> @@ -1274,6 +1274,226 @@ 鏁版嵁鏉冮檺 </summary> </member> + <member name="T:FlexJobApi.Core.UserRole"> + <summary> + 鐢ㄦ埛淇℃伅瑙掕壊 + </summary> + </member> + <member name="P:FlexJobApi.Core.UserRole.UserId"> + <summary> + 鐢ㄦ埛淇℃伅Id + </summary> + </member> + <member name="P:FlexJobApi.Core.UserRole.User"> + <summary> + 鐢ㄦ埛淇℃伅 + </summary> + </member> + <member name="P:FlexJobApi.Core.UserRole.RoleId"> + <summary> + 瑙掕壊Id + </summary> + </member> + <member name="P:FlexJobApi.Core.UserRole.Role"> + <summary> + 瑙掕壊 + </summary> + </member> + <member name="T:FlexJobApi.Core.UserCredential"> + <summary> + 鐢ㄦ埛淇℃伅璧勬牸璇佷功 + </summary> + </member> + <member name="P:FlexJobApi.Core.UserCredential.UserId"> + <summary> + 鐢ㄦ埛淇℃伅Id + </summary> + </member> + <member name="P:FlexJobApi.Core.UserCredential.User"> + <summary> + 鐢ㄦ埛淇℃伅 + </summary> + </member> + <member name="P:FlexJobApi.Core.UserCredential.TypeCode"> + <summary> + 璇佷功绫诲瀷缂栧彿 + </summary> + </member> + <member name="P:FlexJobApi.Core.UserCredential.Type"> + <summary> + 璇佷功绫诲瀷 + </summary> + </member> + <member name="P:FlexJobApi.Core.UserCredential.Code"> + <summary> + 璇佷功缂栧彿 + </summary> + </member> + <member name="P:FlexJobApi.Core.UserCredential.IsForever"> + <summary> + 姘镐箙璇佷功 + </summary> + </member> + <member name="P:FlexJobApi.Core.UserCredential.StartDate"> + <summary> + 寮�濮嬫棩鏈� + </summary> + </member> + <member name="P:FlexJobApi.Core.UserCredential.EndDate"> + <summary> + 缁撴潫鏃ユ湡 + </summary> + </member> + <member name="P:FlexJobApi.Core.UserCredential.IssueUnit"> + <summary> + 鍙戣瘉鍗曚綅 + </summary> + </member> + <member name="P:FlexJobApi.Core.UserCredential.Img"> + <summary> + 璇佷功姝i潰鐓х墖 + </summary> + </member> + <member name="P:FlexJobApi.Core.UserCredential.BackImg"> + <summary> + 璇佷功鍙嶉潰鐓х墖 + </summary> + </member> + <member name="T:FlexJobApi.Core.UserDepartment"> + <summary> + 鐢ㄦ埛淇℃伅閮ㄩ棬 + </summary> + </member> + <member name="P:FlexJobApi.Core.UserDepartment.UserId"> + <summary> + 鐢ㄦ埛淇℃伅Id + </summary> + </member> + <member name="P:FlexJobApi.Core.UserDepartment.User"> + <summary> + 鐢ㄦ埛淇℃伅 + </summary> + </member> + <member name="P:FlexJobApi.Core.UserDepartment.DepartmentId"> + <summary> + 閮ㄩ棬Id + </summary> + </member> + <member name="P:FlexJobApi.Core.UserDepartment.Department"> + <summary> + 閮ㄩ棬 + </summary> + </member> + <member name="T:FlexJobApi.Core.UserExpectJob"> + <summary> + 鐢ㄦ埛淇℃伅鏈熸湜宀椾綅 + </summary> + </member> + <member name="P:FlexJobApi.Core.UserExpectJob.UserId"> + <summary> + 鐢ㄦ埛淇℃伅Id + </summary> + </member> + <member name="P:FlexJobApi.Core.UserExpectJob.User"> + <summary> + 鐢ㄦ埛淇℃伅 + </summary> + </member> + <member name="P:FlexJobApi.Core.UserExpectJob.PersonalIdentityCode"> + <summary> + 鏈熸湜宀椾綅缂栧彿 + </summary> + </member> + <member name="P:FlexJobApi.Core.UserExpectJob.PersonalIdentity"> + <summary> + 鏈熸湜宀椾綅 + </summary> + </member> + <member name="T:FlexJobApi.Core.UserPhoto"> + <summary> + 鐢ㄦ埛淇℃伅鐢熸椿鐓� + </summary> + </member> + <member name="P:FlexJobApi.Core.UserPhoto.UserId"> + <summary> + 鐢ㄦ埛淇℃伅Id + </summary> + </member> + <member name="P:FlexJobApi.Core.UserPhoto.User"> + <summary> + 鐢ㄦ埛淇℃伅 + </summary> + </member> + <member name="P:FlexJobApi.Core.UserPhoto.Img"> + <summary> + 鐓х墖 + </summary> + </member> + <member name="T:FlexJobApi.Core.UserResume"> + <summary> + 鐢ㄦ埛绠�鍘� + </summary> + </member> + <member name="P:FlexJobApi.Core.UserResume.UserId"> + <summary> + 鐢ㄦ埛Id + </summary> + </member> + <member name="P:FlexJobApi.Core.UserResume.User"> + <summary> + 鐢ㄦ埛 + </summary> + </member> + <member name="P:FlexJobApi.Core.UserResume.PersonalIdentityCode"> + <summary> + 韬唤缂栧彿 + </summary> + </member> + <member name="P:FlexJobApi.Core.UserResume.PersonalIdentity"> + <summary> + 韬唤 + </summary> + </member> + <member name="P:FlexJobApi.Core.UserResume.EducationalBackgroundCode"> + <summary> + 瀛﹀巻缂栧彿 + </summary> + </member> + <member name="P:FlexJobApi.Core.UserResume.EducationalBackground"> + <summary> + 瀛﹀巻 + </summary> + </member> + <member name="P:FlexJobApi.Core.UserResume.FreeTime"> + <summary> + 绌洪棽鏃堕棿 + </summary> + </member> + <member name="P:FlexJobApi.Core.UserResume.JobSeekingStatus"> + <summary> + 姹傝亴鐘舵�� + </summary> + </member> + <member name="P:FlexJobApi.Core.UserResume.WorkSeniority"> + <summary> + 宸ヤ綔璧勫巻 + </summary> + </member> + <member name="P:FlexJobApi.Core.UserResume.WorkExperience"> + <summary> + 宸ヤ綔缁忛獙 + </summary> + </member> + <member name="P:FlexJobApi.Core.UserResume.Height"> + <summary> + 韬珮 + </summary> + </member> + <member name="P:FlexJobApi.Core.UserResume.Weight"> + <summary> + 浣撻噸 + </summary> + </member> <member name="T:FlexJobApi.Core.User"> <summary> 鐢ㄦ埛淇℃伅 @@ -1482,226 +1702,6 @@ <member name="P:FlexJobApi.Core.UserBankCard.PhoneNumber"> <summary> 閾惰棰勭暀鎵嬫満鍙� - </summary> - </member> - <member name="T:FlexJobApi.Core.UserCredential"> - <summary> - 鐢ㄦ埛淇℃伅璧勬牸璇佷功 - </summary> - </member> - <member name="P:FlexJobApi.Core.UserCredential.UserId"> - <summary> - 鐢ㄦ埛淇℃伅Id - </summary> - </member> - <member name="P:FlexJobApi.Core.UserCredential.User"> - <summary> - 鐢ㄦ埛淇℃伅 - </summary> - </member> - <member name="P:FlexJobApi.Core.UserCredential.TypeCode"> - <summary> - 璇佷功绫诲瀷缂栧彿 - </summary> - </member> - <member name="P:FlexJobApi.Core.UserCredential.Type"> - <summary> - 璇佷功绫诲瀷 - </summary> - </member> - <member name="P:FlexJobApi.Core.UserCredential.Code"> - <summary> - 璇佷功缂栧彿 - </summary> - </member> - <member name="P:FlexJobApi.Core.UserCredential.IsForever"> - <summary> - 姘镐箙璇佷功 - </summary> - </member> - <member name="P:FlexJobApi.Core.UserCredential.StartDate"> - <summary> - 寮�濮嬫棩鏈� - </summary> - </member> - <member name="P:FlexJobApi.Core.UserCredential.EndDate"> - <summary> - 缁撴潫鏃ユ湡 - </summary> - </member> - <member name="P:FlexJobApi.Core.UserCredential.IssueUnit"> - <summary> - 鍙戣瘉鍗曚綅 - </summary> - </member> - <member name="P:FlexJobApi.Core.UserCredential.Img"> - <summary> - 璇佷功姝i潰鐓х墖 - </summary> - </member> - <member name="P:FlexJobApi.Core.UserCredential.BackImg"> - <summary> - 璇佷功鍙嶉潰鐓х墖 - </summary> - </member> - <member name="T:FlexJobApi.Core.UserDepartment"> - <summary> - 鐢ㄦ埛淇℃伅閮ㄩ棬 - </summary> - </member> - <member name="P:FlexJobApi.Core.UserDepartment.UserId"> - <summary> - 鐢ㄦ埛淇℃伅Id - </summary> - </member> - <member name="P:FlexJobApi.Core.UserDepartment.User"> - <summary> - 鐢ㄦ埛淇℃伅 - </summary> - </member> - <member name="P:FlexJobApi.Core.UserDepartment.DepartmentId"> - <summary> - 閮ㄩ棬Id - </summary> - </member> - <member name="P:FlexJobApi.Core.UserDepartment.Department"> - <summary> - 閮ㄩ棬 - </summary> - </member> - <member name="T:FlexJobApi.Core.UserExpectJob"> - <summary> - 鐢ㄦ埛淇℃伅鏈熸湜宀椾綅 - </summary> - </member> - <member name="P:FlexJobApi.Core.UserExpectJob.UserId"> - <summary> - 鐢ㄦ埛淇℃伅Id - </summary> - </member> - <member name="P:FlexJobApi.Core.UserExpectJob.User"> - <summary> - 鐢ㄦ埛淇℃伅 - </summary> - </member> - <member name="P:FlexJobApi.Core.UserExpectJob.PersonalIdentityCode"> - <summary> - 鏈熸湜宀椾綅缂栧彿 - </summary> - </member> - <member name="P:FlexJobApi.Core.UserExpectJob.PersonalIdentity"> - <summary> - 鏈熸湜宀椾綅 - </summary> - </member> - <member name="T:FlexJobApi.Core.UserPhoto"> - <summary> - 鐢ㄦ埛淇℃伅鐢熸椿鐓� - </summary> - </member> - <member name="P:FlexJobApi.Core.UserPhoto.UserId"> - <summary> - 鐢ㄦ埛淇℃伅Id - </summary> - </member> - <member name="P:FlexJobApi.Core.UserPhoto.User"> - <summary> - 鐢ㄦ埛淇℃伅 - </summary> - </member> - <member name="P:FlexJobApi.Core.UserPhoto.Img"> - <summary> - 鐓х墖 - </summary> - </member> - <member name="T:FlexJobApi.Core.UserResume"> - <summary> - 鐢ㄦ埛绠�鍘� - </summary> - </member> - <member name="P:FlexJobApi.Core.UserResume.UserId"> - <summary> - 鐢ㄦ埛Id - </summary> - </member> - <member name="P:FlexJobApi.Core.UserResume.User"> - <summary> - 鐢ㄦ埛 - </summary> - </member> - <member name="P:FlexJobApi.Core.UserResume.PersonalIdentityCode"> - <summary> - 韬唤缂栧彿 - </summary> - </member> - <member name="P:FlexJobApi.Core.UserResume.PersonalIdentity"> - <summary> - 韬唤 - </summary> - </member> - <member name="P:FlexJobApi.Core.UserResume.EducationalBackgroundCode"> - <summary> - 瀛﹀巻缂栧彿 - </summary> - </member> - <member name="P:FlexJobApi.Core.UserResume.EducationalBackground"> - <summary> - 瀛﹀巻 - </summary> - </member> - <member name="P:FlexJobApi.Core.UserResume.FreeTime"> - <summary> - 绌洪棽鏃堕棿 - </summary> - </member> - <member name="P:FlexJobApi.Core.UserResume.JobSeekingStatus"> - <summary> - 姹傝亴鐘舵�� - </summary> - </member> - <member name="P:FlexJobApi.Core.UserResume.WorkSeniority"> - <summary> - 宸ヤ綔璧勫巻 - </summary> - </member> - <member name="P:FlexJobApi.Core.UserResume.WorkExperience"> - <summary> - 宸ヤ綔缁忛獙 - </summary> - </member> - <member name="P:FlexJobApi.Core.UserResume.Height"> - <summary> - 韬珮 - </summary> - </member> - <member name="P:FlexJobApi.Core.UserResume.Weight"> - <summary> - 浣撻噸 - </summary> - </member> - <member name="T:FlexJobApi.Core.UserRole"> - <summary> - 鐢ㄦ埛淇℃伅瑙掕壊 - </summary> - </member> - <member name="P:FlexJobApi.Core.UserRole.UserId"> - <summary> - 鐢ㄦ埛淇℃伅Id - </summary> - </member> - <member name="P:FlexJobApi.Core.UserRole.User"> - <summary> - 鐢ㄦ埛淇℃伅 - </summary> - </member> - <member name="P:FlexJobApi.Core.UserRole.RoleId"> - <summary> - 瑙掕壊Id - </summary> - </member> - <member name="P:FlexJobApi.Core.UserRole.Role"> - <summary> - 瑙掕壊 </summary> </member> <member name="T:FlexJobApi.Core.EnumConsoleLogAccess"> @@ -1982,6 +1982,36 @@ <member name="F:FlexJobApi.Core.EnumSmsAccess.AliyunSms"> <summary> 闃块噷浜戠煭淇� + </summary> + </member> + <member name="T:FlexJobApi.Core.EnumSmsTemplateType"> + <summary> + 鐭俊妯℃澘绫诲瀷 + </summary> + </member> + <member name="F:FlexJobApi.Core.EnumSmsTemplateType.Login"> + <summary> + 鐧诲綍 + </summary> + </member> + <member name="F:FlexJobApi.Core.EnumSmsTemplateType.Register"> + <summary> + 娉ㄥ唽 + </summary> + </member> + <member name="F:FlexJobApi.Core.EnumSmsTemplateType.UpdatePassword"> + <summary> + 淇敼瀵嗙爜 + </summary> + </member> + <member name="F:FlexJobApi.Core.EnumSmsTemplateType.BindPhoneNumber"> + <summary> + 缁戝畾鎵嬫満鍙风爜 + </summary> + </member> + <member name="F:FlexJobApi.Core.EnumSmsTemplateType.UpdatePhoneNumber"> + <summary> + 淇敼鎵嬫満鍙风爜 </summary> </member> <member name="T:FlexJobApi.Core.EnumBillingMethod"> @@ -3331,6 +3361,71 @@ <member name="P:FlexJobApi.Core.PasswordLoginCommandCallback.RefreshToken"> <summary> 鍒锋柊浠ょ墝 + </summary> + </member> + <member name="T:FlexJobApi.Core.SendVerifyCodeCommand"> + <summary> + 鍙戦�侀獙璇佺爜 + </summary> + </member> + <member name="P:FlexJobApi.Core.SendVerifyCodeCommand.PhoneNumber"> + <summary> + 鎵嬫満鍙风爜 + </summary> + </member> + <member name="P:FlexJobApi.Core.SendVerifyCodeCommand.TemplateCode"> + <summary> + 鐭俊妯℃澘缂栧彿 + </summary> + </member> + <member name="T:FlexJobApi.Core.SmsLoginCommand"> + <summary> + 鐭俊鐧诲綍 + </summary> + </member> + <member name="P:FlexJobApi.Core.SmsLoginCommand.PhoneNumber"> + <summary> + 鎵嬫満鍙风爜 + </summary> + </member> + <member name="P:FlexJobApi.Core.SmsLoginCommand.VerifyCode"> + <summary> + 楠岃瘉鐮� + </summary> + </member> + <member name="P:FlexJobApi.Core.SmsLoginCommand.Type"> + <summary> + 鐢ㄦ埛绫诲瀷 + </summary> + </member> + <member name="P:FlexJobApi.Core.SmsLoginCommand.ClientType"> + <summary> + 瀹㈡埛绔被鍨� + </summary> + </member> + <member name="T:FlexJobApi.Core.WxmpLoginCommand"> + <summary> + 寰俊灏忕▼搴忕櫥褰� + </summary> + </member> + <member name="P:FlexJobApi.Core.WxmpLoginCommand.Code"> + <summary> + 鐢ㄦ埛鐧诲綍鍑瘉 + </summary> + </member> + <member name="T:FlexJobApi.Core.WxmpRegisterCommand"> + <summary> + 寰俊灏忕▼搴忔敞鍐� + </summary> + </member> + <member name="P:FlexJobApi.Core.WxmpRegisterCommand.PhoneNumber"> + <summary> + 鎵嬫満鍙风爜 + </summary> + </member> + <member name="P:FlexJobApi.Core.WxmpRegisterCommand.VerifyCode"> + <summary> + 楠岃瘉鐮� </summary> </member> <member name="T:FlexJobApi.Core.GetAliyunOSSAcsQuery"> @@ -5098,7 +5193,7 @@ <param name="cancellationToken"></param> <returns></returns> </member> - <member name="M:FlexJobApi.Core.DbUtils.OrderBy``1(System.Linq.IQueryable{``0},System.Collections.Generic.List{FlexJobApi.Core.PagedListQueryPageModelOrderInput})"> + <member name="M:FlexJobApi.Core.DbUtils.CustomOrderBy``1(System.Linq.IQueryable{``0},System.Collections.Generic.List{FlexJobApi.Core.PagedListQueryPageModelOrderInput})"> <summary> 鎺掑簭 </summary> diff --git a/FlexJobApi.Core/Models/FlexJobServer/Tasks/Queries/GetTaskInfosQuery.cs b/FlexJobApi.Core/Models/FlexJobServer/Tasks/Queries/GetTaskInfosQuery.cs index 6637a43..9cb25d4 100644 --- a/FlexJobApi.Core/Models/FlexJobServer/Tasks/Queries/GetTaskInfosQuery.cs +++ b/FlexJobApi.Core/Models/FlexJobServer/Tasks/Queries/GetTaskInfosQuery.cs @@ -138,12 +138,12 @@ /// <summary> /// 楠屾敹鐘舵�� /// </summary> - public EnumTaskCheckReceiveStatus CheckReceiveStatus { get; set; } + public EnumTaskCheckReceiveStatus? CheckReceiveStatus { get; set; } /// <summary> /// 缁撶畻鐘舵�� /// </summary> - public EnumTaskSettlementStatus SettlementStatus { get; set; } + public EnumTaskSettlementStatus? SettlementStatus { get; set; } /// <summary> /// 鎺ㄨ崘鐘舵�� diff --git a/FlexJobApi.Core/Models/FlexJobServer/Tasks/Repositories/TaskInfoRepository.cs b/FlexJobApi.Core/Models/FlexJobServer/Tasks/Repositories/TaskInfoRepository.cs index 103ccbe..b62e4f5 100644 --- a/FlexJobApi.Core/Models/FlexJobServer/Tasks/Repositories/TaskInfoRepository.cs +++ b/FlexJobApi.Core/Models/FlexJobServer/Tasks/Repositories/TaskInfoRepository.cs @@ -23,12 +23,13 @@ public static IQueryable<TaskInfo> GetQueryable(this IRepository<TaskInfo> rep, CurrentLogier logier = null) { logier = logier ?? JwtUtils.GetCurrentLogier(); - return rep.AsQueryable().AsNoTracking() - .OrderBy(it => it.BeginTime) - .Where(it => - logier.Type == EnumUserType.Enterprise - ? it.EnterpriseId == logier.EnterpriseId - : true); + IQueryable<TaskInfo> q = rep.AsQueryable().AsNoTracking() + .OrderBy(it => it.BeginTime); + if (logier != null && logier.Type == EnumUserType.Enterprise) + { + q = q.Where(it => it.EnterpriseId == logier.EnterpriseId); + } + return q; } } } diff --git a/FlexJobApi.Core/Models/UserServer/Auths/Commands/SendVerifyCodeCommand.cs b/FlexJobApi.Core/Models/UserServer/Auths/Commands/SendVerifyCodeCommand.cs new file mode 100644 index 0000000..c2b2159 --- /dev/null +++ b/FlexJobApi.Core/Models/UserServer/Auths/Commands/SendVerifyCodeCommand.cs @@ -0,0 +1,25 @@ +锘縰sing MediatR; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace FlexJobApi.Core +{ + /// <summary> + /// 鍙戦�侀獙璇佺爜 + /// </summary> + [Resource([EnumResourceController.Auth], AllowAnonymous = true)] + public class SendVerifyCodeCommand : IRequest + { + /// <summary> + /// 鎵嬫満鍙风爜 + /// </summary> + public string PhoneNumber { get; set; } + /// <summary> + /// 鐭俊妯℃澘缂栧彿 + /// </summary> + public EnumSmsTemplateType TemplateCode { get; set; } + } +} diff --git a/FlexJobApi.Core/Models/UserServer/Auths/Commands/SmsLoginCommand.cs b/FlexJobApi.Core/Models/UserServer/Auths/Commands/SmsLoginCommand.cs new file mode 100644 index 0000000..2257237 --- /dev/null +++ b/FlexJobApi.Core/Models/UserServer/Auths/Commands/SmsLoginCommand.cs @@ -0,0 +1,36 @@ +锘縰sing System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace FlexJobApi.Core +{ + /// <summary> + /// 鐭俊鐧诲綍 + /// </summary> + [Resource([EnumResourceController.Auth], AllowAnonymous = true)] + public class SmsLoginCommand + { + /// <summary> + /// 鎵嬫満鍙风爜 + /// </summary> + [Required] + public string PhoneNumber { get; set; } + /// <summary> + /// 楠岃瘉鐮� + /// </summary> + [Required] + public string VerifyCode { get; set; } + /// <summary> + /// 鐢ㄦ埛绫诲瀷 + /// </summary> + public EnumUserType Type { get; set; } + + /// <summary> + /// 瀹㈡埛绔被鍨� + /// </summary> + public EnumClientType ClientType { get; set; } + } +} diff --git a/FlexJobApi.Core/Models/UserServer/Auths/Commands/WxmpLoginCommand.cs b/FlexJobApi.Core/Models/UserServer/Auths/Commands/WxmpLoginCommand.cs new file mode 100644 index 0000000..8ce3492 --- /dev/null +++ b/FlexJobApi.Core/Models/UserServer/Auths/Commands/WxmpLoginCommand.cs @@ -0,0 +1,21 @@ +锘縰sing System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace FlexJobApi.Core +{ + /// <summary> + /// 寰俊灏忕▼搴忕櫥褰� + /// </summary> + public class WxmpLoginCommand + { + /// <summary> + /// 鐢ㄦ埛鐧诲綍鍑瘉 + /// </summary> + [Required] + public string Code { get; set; } + } +} diff --git a/FlexJobApi.Core/Models/UserServer/Auths/Commands/WxmpRegisterCommand.cs b/FlexJobApi.Core/Models/UserServer/Auths/Commands/WxmpRegisterCommand.cs new file mode 100644 index 0000000..8f7c603 --- /dev/null +++ b/FlexJobApi.Core/Models/UserServer/Auths/Commands/WxmpRegisterCommand.cs @@ -0,0 +1,26 @@ +锘縰sing System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace FlexJobApi.Core +{ + /// <summary> + /// 寰俊灏忕▼搴忔敞鍐� + /// </summary> + public class WxmpRegisterCommand + { + /// <summary> + /// 鎵嬫満鍙风爜 + /// </summary> + [Required] + public string PhoneNumber { get; set; } + /// <summary> + /// 楠岃瘉鐮� + /// </summary> + [Required] + public string VerifyCode { get; set; } + } +} diff --git a/FlexJobApi.Core/Utils/DbUtils/DbUtils.cs b/FlexJobApi.Core/Utils/DbUtils/DbUtils.cs index cf2c06d..b770ec5 100644 --- a/FlexJobApi.Core/Utils/DbUtils/DbUtils.cs +++ b/FlexJobApi.Core/Utils/DbUtils/DbUtils.cs @@ -148,7 +148,7 @@ var q = rep.AsQueryable().AsNoTracking(); if (query != null) q = query(q); else q = q.OrderBy(it => it.Sort).ThenBy(it => it.CreatedTime); - q = q.OrderBy(page.OrderInput); + q = q.CustomOrderBy(page.OrderInput); var s = selector == null ? q.ProjectToType<TItem>() : q.Select(selector); @@ -175,7 +175,7 @@ CancellationToken cancellationToken = default) where TItem : class, new() { - q = q.OrderBy(page.OrderInput); + //q = q.CustomOrderBy(page.OrderInput); var pagedList = await q.ToPagedListAsync(page.Page, page.Rows, cancellationToken); var result = new PagedListQueryResult<TItem>(); result.PageModel = page.Adapt<PagedListQueryResultPageModel>(); @@ -192,7 +192,7 @@ /// <param name="q"></param> /// <param name="orders"></param> /// <returns></returns> - public static IQueryable<T> OrderBy<T>( + public static IQueryable<T> CustomOrderBy<T>( this IQueryable<T> q, List<PagedListQueryPageModelOrderInput> orders) { diff --git a/FlexJobApi.Core/Utils/ResourceUtils/ResourceUtils.cs b/FlexJobApi.Core/Utils/ResourceUtils/ResourceUtils.cs index cc1216c..b9d51e0 100644 --- a/FlexJobApi.Core/Utils/ResourceUtils/ResourceUtils.cs +++ b/FlexJobApi.Core/Utils/ResourceUtils/ResourceUtils.cs @@ -223,9 +223,10 @@ code += $@" [AllowAnonymous]"; } + var result = resource.ResponseTypeName.IsNull() ? "Task" : $"Task<{resource.ResponseTypeName}>"; code += $@" [Http{resource.Method}] - public Task<{resource.ResponseTypeName}> {resource.ActionName}({resource.RequestTypeName} request) + public {result} {resource.ActionName}({resource.RequestTypeName} request) {{ return mediator.Send(request); }} @@ -233,10 +234,18 @@ }} }} "; - var dynamicAssembly = App.CompileCSharpClassCode(code); - provider.AddAssembliesWithNotifyChanges(dynamicAssembly); - var dynamicAssemblyName = dynamicAssembly.GetName().Name; - resource.DynamicAssemblyName = dynamicAssemblyName; + try + { + var dynamicAssembly = App.CompileCSharpClassCode(code); + provider.AddAssembliesWithNotifyChanges(dynamicAssembly); + var dynamicAssemblyName = dynamicAssembly.GetName().Name; + resource.DynamicAssemblyName = dynamicAssemblyName; + } + catch (Exception ex) + { + Console.WriteLine(code); + throw; + } } } diff --git a/FlexJobApi.Database.Migrations/Migrations/20250808051314_UpdateResource0808.Designer.cs b/FlexJobApi.Database.Migrations/Migrations/20250808051314_UpdateResource0808.Designer.cs new file mode 100644 index 0000000..57890c0 --- /dev/null +++ b/FlexJobApi.Database.Migrations/Migrations/20250808051314_UpdateResource0808.Designer.cs @@ -0,0 +1,1996 @@ +锘�// <auto-generated /> +using System; +using FlexJobApi.EntityFramework.Core; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Metadata; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; + +#nullable disable + +namespace FlexJobApi.Database.Migrations.Migrations +{ + [DbContext(typeof(DefaultDbContext))] + [Migration("20250808051314_UpdateResource0808")] + partial class UpdateResource0808 + { + /// <inheritdoc /> + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("ProductVersion", "9.0.7") + .HasAnnotation("Relational:MaxIdentifierLength", 128); + + SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder); + + modelBuilder.Entity("FlexJobApi.Core.Department", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property<Guid?>("CreatedEnterpriseId") + .HasColumnType("uniqueidentifier"); + + b.Property<DateTimeOffset>("CreatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("CreatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<Guid>("EnterpriseId") + .HasColumnType("uniqueidentifier"); + + b.Property<bool>("IsDeleted") + .HasColumnType("bit"); + + b.Property<bool>("IsDisabled") + .HasColumnType("bit"); + + b.Property<string>("Name") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property<Guid?>("ParentId") + .HasColumnType("uniqueidentifier"); + + b.Property<string>("Path") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("Remark") + .HasColumnType("nvarchar(max)"); + + b.Property<int>("Sort") + .HasColumnType("int"); + + b.Property<string>("TraceId") + .HasColumnType("nvarchar(max)"); + + b.Property<DateTimeOffset?>("UpdatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("UpdatedUserId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("Id"); + + b.HasIndex("EnterpriseId"); + + b.HasIndex("ParentId"); + + b.ToTable("Department"); + }); + + modelBuilder.Entity("FlexJobApi.Core.DictionaryCategory", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property<string>("Code") + .IsRequired() + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); + + b.Property<Guid?>("CreatedEnterpriseId") + .HasColumnType("uniqueidentifier"); + + b.Property<DateTimeOffset>("CreatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("CreatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<string>("FieldNames") + .HasColumnType("nvarchar(max)"); + + b.Property<bool>("IsDeleted") + .HasColumnType("bit"); + + b.Property<string>("Name") + .IsRequired() + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); + + b.Property<string>("Remark") + .HasColumnType("nvarchar(max)"); + + b.Property<int>("Sort") + .HasColumnType("int"); + + b.Property<string>("TraceId") + .HasColumnType("nvarchar(max)"); + + b.Property<DateTimeOffset?>("UpdatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("UpdatedUserId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("Id"); + + b.ToTable("DictionaryCategory"); + }); + + modelBuilder.Entity("FlexJobApi.Core.DictionaryData", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property<Guid>("CategoryId") + .HasColumnType("uniqueidentifier"); + + b.Property<string>("Code") + .IsRequired() + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); + + b.Property<string>("Content") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property<Guid?>("CreatedEnterpriseId") + .HasColumnType("uniqueidentifier"); + + b.Property<DateTimeOffset>("CreatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("CreatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<int>("Deep") + .HasColumnType("int"); + + b.Property<string>("Field1") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("Field2") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("Field3") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("Field4") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("Field5") + .HasColumnType("nvarchar(max)"); + + b.Property<bool>("IsDeleted") + .HasColumnType("bit"); + + b.Property<bool>("IsDisabled") + .HasColumnType("bit"); + + b.Property<Guid?>("ParentId") + .HasColumnType("uniqueidentifier"); + + b.Property<string>("Path") + .HasColumnType("nvarchar(max)"); + + b.Property<int>("Sort") + .HasColumnType("int"); + + b.Property<string>("TraceId") + .HasColumnType("nvarchar(max)"); + + b.Property<DateTimeOffset?>("UpdatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("UpdatedUserId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("Id"); + + b.HasIndex("CategoryId"); + + b.HasIndex("Code") + .IsUnique(); + + b.HasIndex("ParentId"); + + b.ToTable("DictionaryData"); + }); + + modelBuilder.Entity("FlexJobApi.Core.Enterprise", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property<string>("BankBranchName") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("BankCard") + .HasMaxLength(32) + .HasColumnType("nvarchar(32)"); + + b.Property<string>("BankName") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("CityCode") + .HasColumnType("nvarchar(128)"); + + b.Property<string>("ContactEmail") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("ContactPhoneNumber") + .HasMaxLength(11) + .HasColumnType("nvarchar(11)"); + + b.Property<string>("Contacts") + .HasMaxLength(32) + .HasColumnType("nvarchar(32)"); + + b.Property<Guid?>("CreatedEnterpriseId") + .HasColumnType("uniqueidentifier"); + + b.Property<DateTimeOffset>("CreatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("CreatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<string>("EnterpriseName") + .IsRequired() + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); + + b.Property<string>("IndustryTypeCode") + .HasColumnType("nvarchar(128)"); + + b.Property<bool>("IsCheckedBankCard") + .HasColumnType("bit"); + + b.Property<bool>("IsDeleted") + .HasColumnType("bit"); + + b.Property<bool>("IsReal") + .HasColumnType("bit"); + + b.Property<string>("LegalIdentity") + .HasMaxLength(18) + .HasColumnType("nvarchar(18)"); + + b.Property<string>("LegalPerson") + .HasMaxLength(32) + .HasColumnType("nvarchar(32)"); + + b.Property<string>("LicenseImage") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("MainBusiness") + .HasColumnType("nvarchar(max)"); + + b.Property<decimal?>("MergeSignCost") + .HasColumnType("decimal(18,2)"); + + b.Property<int?>("PayAccess") + .HasColumnType("int"); + + b.Property<string>("ProvinceCode") + .HasColumnType("nvarchar(128)"); + + b.Property<int?>("RealAccess") + .HasColumnType("int"); + + b.Property<decimal?>("RealVerifyCost") + .HasColumnType("decimal(18,2)"); + + b.Property<decimal?>("SignCost") + .HasColumnType("decimal(18,2)"); + + b.Property<int?>("SmsAccess") + .HasColumnType("int"); + + b.Property<decimal>("SmsCost") + .HasColumnType("decimal(18,2)"); + + b.Property<string>("SocietyCreditCode") + .IsRequired() + .HasMaxLength(18) + .HasColumnType("nvarchar(18)"); + + b.Property<int>("Sort") + .HasColumnType("int"); + + b.Property<string>("TraceId") + .HasColumnType("nvarchar(max)"); + + b.Property<DateTimeOffset?>("UpdatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("UpdatedUserId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("Id"); + + b.HasIndex("CityCode"); + + b.HasIndex("IndustryTypeCode"); + + b.HasIndex("ProvinceCode"); + + b.ToTable("Enterprise"); + }); + + modelBuilder.Entity("FlexJobApi.Core.EnterpriseAuth", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property<string>("BankCard") + .HasMaxLength(32) + .HasColumnType("nvarchar(32)"); + + b.Property<string>("BankCardImg") + .HasColumnType("nvarchar(max)"); + + b.Property<Guid?>("CreatedEnterpriseId") + .HasColumnType("uniqueidentifier"); + + b.Property<DateTimeOffset>("CreatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("CreatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<string>("EnterpriseName") + .IsRequired() + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); + + b.Property<int?>("EnterpriseRealMethod") + .HasColumnType("int"); + + b.Property<string>("Identity") + .HasMaxLength(18) + .HasColumnType("nvarchar(18)"); + + b.Property<string>("IdentityBackImg") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("IdentityImg") + .HasColumnType("nvarchar(max)"); + + b.Property<bool>("IsDeleted") + .HasColumnType("bit"); + + b.Property<string>("LegalIdentity") + .HasMaxLength(18) + .HasColumnType("nvarchar(18)"); + + b.Property<string>("LegalPerson") + .HasMaxLength(32) + .HasColumnType("nvarchar(32)"); + + b.Property<string>("LicenseImage") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("Name") + .HasMaxLength(32) + .HasColumnType("nvarchar(32)"); + + b.Property<int?>("PersonalRealMethod") + .HasColumnType("int"); + + b.Property<string>("PhoneNumber") + .HasMaxLength(11) + .HasColumnType("nvarchar(11)"); + + b.Property<bool?>("Proxy") + .HasColumnType("bit"); + + b.Property<string>("ProxyPowerAttorneyUrl") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("SocietyCreditCode") + .IsRequired() + .HasMaxLength(18) + .HasColumnType("nvarchar(18)"); + + b.Property<int>("Sort") + .HasColumnType("int"); + + b.Property<string>("TraceId") + .HasColumnType("nvarchar(max)"); + + b.Property<DateTimeOffset?>("UpdatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("UpdatedUserId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("Id"); + + b.ToTable("EnterpriseAuth"); + }); + + modelBuilder.Entity("FlexJobApi.Core.Menu", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property<int>("ClientType") + .HasColumnType("int"); + + b.Property<string>("Code") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property<Guid?>("CreatedEnterpriseId") + .HasColumnType("uniqueidentifier"); + + b.Property<DateTimeOffset>("CreatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("CreatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<string>("Group") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("Icon") + .HasColumnType("nvarchar(max)"); + + b.Property<bool>("IsCache") + .HasColumnType("bit"); + + b.Property<bool>("IsDeleted") + .HasColumnType("bit"); + + b.Property<bool>("IsDisabled") + .HasColumnType("bit"); + + b.Property<string>("Location") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("Name") + .IsRequired() + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); + + b.Property<Guid?>("ParentId") + .HasColumnType("uniqueidentifier"); + + b.Property<string>("Path") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("Remark") + .HasColumnType("nvarchar(max)"); + + b.Property<int>("Sort") + .HasColumnType("int"); + + b.Property<string>("TraceId") + .HasColumnType("nvarchar(max)"); + + b.Property<int>("Type") + .HasColumnType("int"); + + b.Property<DateTimeOffset?>("UpdatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("UpdatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<string>("Url") + .HasColumnType("nvarchar(max)"); + + b.Property<int>("UserType") + .HasColumnType("int"); + + b.Property<int>("VisitLevel") + .HasColumnType("int"); + + b.Property<string>("Width") + .HasColumnType("nvarchar(max)"); + + b.HasKey("Id"); + + b.HasIndex("ParentId"); + + b.ToTable("Menu"); + }); + + modelBuilder.Entity("FlexJobApi.Core.Resource", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property<string>("ActionName") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("ActionSummary") + .HasColumnType("nvarchar(max)"); + + b.Property<bool>("AllowAnonymous") + .HasColumnType("bit"); + + b.Property<string>("ApplicationName") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("Code") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property<int>("Controller") + .HasColumnType("int"); + + b.Property<string>("ControllerSummary") + .HasColumnType("nvarchar(max)"); + + b.Property<Guid?>("CreatedEnterpriseId") + .HasColumnType("uniqueidentifier"); + + b.Property<DateTimeOffset>("CreatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("CreatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<string>("DynamicAssemblyName") + .HasColumnType("nvarchar(max)"); + + b.Property<bool>("IsDeleted") + .HasColumnType("bit"); + + b.Property<bool>("IsExpired") + .HasColumnType("bit"); + + b.Property<int>("Method") + .HasColumnType("int"); + + b.Property<string>("Name") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property<string>("RequestTypeFullName") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property<string>("RequestTypeName") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property<string>("ResponseTypeFullName") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("ResponseTypeName") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("Route") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property<string>("RouteArea") + .HasColumnType("nvarchar(max)"); + + b.Property<int>("Service") + .HasColumnType("int"); + + b.Property<string>("ServiceName") + .HasColumnType("nvarchar(max)"); + + b.Property<int>("Sort") + .HasColumnType("int"); + + b.Property<string>("TraceId") + .HasColumnType("nvarchar(max)"); + + b.Property<DateTimeOffset?>("UpdatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("UpdatedUserId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("Id"); + + b.ToTable("Resource"); + }); + + modelBuilder.Entity("FlexJobApi.Core.Role", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property<int>("ClientType") + .HasColumnType("int"); + + b.Property<Guid?>("CreatedEnterpriseId") + .HasColumnType("uniqueidentifier"); + + b.Property<DateTimeOffset>("CreatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("CreatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<int>("DataPower") + .HasColumnType("int"); + + b.Property<bool>("IsDeleted") + .HasColumnType("bit"); + + b.Property<bool>("IsDisabled") + .HasColumnType("bit"); + + b.Property<int>("MinLevel") + .HasColumnType("int"); + + b.Property<string>("Name") + .IsRequired() + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); + + b.Property<string>("Remark") + .HasColumnType("nvarchar(max)"); + + b.Property<int>("Sort") + .HasColumnType("int"); + + b.Property<string>("TraceId") + .HasColumnType("nvarchar(max)"); + + b.Property<DateTimeOffset?>("UpdatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("UpdatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<int>("UserType") + .HasColumnType("int"); + + b.HasKey("Id"); + + b.ToTable("Role"); + }); + + modelBuilder.Entity("FlexJobApi.Core.RoleMenu", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property<Guid?>("CreatedEnterpriseId") + .HasColumnType("uniqueidentifier"); + + b.Property<DateTimeOffset>("CreatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("CreatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<bool>("IsDeleted") + .HasColumnType("bit"); + + b.Property<Guid>("MenuId") + .HasColumnType("uniqueidentifier"); + + b.Property<Guid>("RoleId") + .HasColumnType("uniqueidentifier"); + + b.Property<int>("Sort") + .HasColumnType("int"); + + b.Property<string>("TraceId") + .HasColumnType("nvarchar(max)"); + + b.Property<DateTimeOffset?>("UpdatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("UpdatedUserId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("Id"); + + b.HasIndex("MenuId"); + + b.HasIndex("RoleId"); + + b.ToTable("RoleMenu"); + }); + + modelBuilder.Entity("FlexJobApi.Core.RoleResource", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property<Guid?>("CreatedEnterpriseId") + .HasColumnType("uniqueidentifier"); + + b.Property<DateTimeOffset>("CreatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("CreatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<int>("DataPower") + .HasColumnType("int"); + + b.Property<bool>("IsDeleted") + .HasColumnType("bit"); + + b.Property<Guid>("ResourceId") + .HasColumnType("uniqueidentifier"); + + b.Property<Guid>("RoleId") + .HasColumnType("uniqueidentifier"); + + b.Property<int>("Sort") + .HasColumnType("int"); + + b.Property<string>("TraceId") + .HasColumnType("nvarchar(max)"); + + b.Property<DateTimeOffset?>("UpdatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("UpdatedUserId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("Id"); + + b.HasIndex("ResourceId"); + + b.HasIndex("RoleId"); + + b.ToTable("RoleResource"); + }); + + modelBuilder.Entity("FlexJobApi.Core.TaskInfo", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property<string>("AddressDetail") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("AddressName") + .HasColumnType("nvarchar(max)"); + + b.Property<int>("AgeMaxLimit") + .HasColumnType("int"); + + b.Property<int>("AgeMinLimit") + .HasColumnType("int"); + + b.Property<DateTime>("BeginTime") + .HasColumnType("datetime2"); + + b.Property<int>("BillingMethod") + .HasColumnType("int"); + + b.Property<int?>("CheckReceiveStatus") + .HasColumnType("int"); + + b.Property<string>("CityCode") + .HasColumnType("nvarchar(128)"); + + b.Property<string>("Code") + .HasColumnType("nvarchar(max)"); + + b.Property<Guid?>("CreatedEnterpriseId") + .HasColumnType("uniqueidentifier"); + + b.Property<DateTimeOffset>("CreatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("CreatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<DateTime>("EndTime") + .HasColumnType("datetime2"); + + b.Property<Guid>("EnterpriseId") + .HasColumnType("uniqueidentifier"); + + b.Property<int>("GenderLimit") + .HasColumnType("int"); + + b.Property<bool>("IsDeleted") + .HasColumnType("bit"); + + b.Property<decimal?>("Latitude") + .HasColumnType("decimal(18,2)"); + + b.Property<decimal?>("Longitude") + .HasColumnType("decimal(18,2)"); + + b.Property<string>("Name") + .IsRequired() + .HasColumnType("nvarchar(max)"); + + b.Property<string>("ProvinceCode") + .HasColumnType("nvarchar(128)"); + + b.Property<int>("RecommendStatus") + .HasColumnType("int"); + + b.Property<int>("ReleaseStatus") + .HasColumnType("int"); + + b.Property<decimal>("ServiceFee") + .HasColumnType("decimal(18,2)"); + + b.Property<int>("SettlementCycle") + .HasColumnType("int"); + + b.Property<int?>("SettlementStatus") + .HasColumnType("int"); + + b.Property<int>("Sort") + .HasColumnType("int"); + + b.Property<int>("Status") + .HasColumnType("int"); + + b.Property<string>("TraceId") + .HasColumnType("nvarchar(max)"); + + b.Property<DateTimeOffset?>("UpdatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("UpdatedUserId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("Id"); + + b.HasIndex("CityCode"); + + b.HasIndex("EnterpriseId"); + + b.HasIndex("ProvinceCode"); + + b.ToTable("TaskInfo"); + }); + + modelBuilder.Entity("FlexJobApi.Core.TaskInfoBenefit", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property<string>("BenefitCode") + .IsRequired() + .HasColumnType("nvarchar(128)"); + + b.Property<Guid?>("CreatedEnterpriseId") + .HasColumnType("uniqueidentifier"); + + b.Property<DateTimeOffset>("CreatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("CreatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<bool>("IsDeleted") + .HasColumnType("bit"); + + b.Property<int>("Sort") + .HasColumnType("int"); + + b.Property<Guid>("TaskInfoId") + .HasColumnType("uniqueidentifier"); + + b.Property<string>("TraceId") + .HasColumnType("nvarchar(max)"); + + b.Property<DateTimeOffset?>("UpdatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("UpdatedUserId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("Id"); + + b.HasIndex("BenefitCode"); + + b.HasIndex("TaskInfoId"); + + b.ToTable("TaskInfoBenefit"); + }); + + modelBuilder.Entity("FlexJobApi.Core.TaskInfoCredentialLimit", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property<Guid?>("CreatedEnterpriseId") + .HasColumnType("uniqueidentifier"); + + b.Property<DateTimeOffset>("CreatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("CreatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<bool>("IsDeleted") + .HasColumnType("bit"); + + b.Property<int>("Sort") + .HasColumnType("int"); + + b.Property<Guid>("TaskInfoId") + .HasColumnType("uniqueidentifier"); + + b.Property<string>("TraceId") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("TypeCode") + .IsRequired() + .HasColumnType("nvarchar(128)"); + + b.Property<DateTimeOffset?>("UpdatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("UpdatedUserId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("Id"); + + b.HasIndex("TaskInfoId"); + + b.HasIndex("TypeCode"); + + b.ToTable("TaskInfoCredentialLimit"); + }); + + modelBuilder.Entity("FlexJobApi.Core.TaskInfoUser", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property<Guid?>("CreatedEnterpriseId") + .HasColumnType("uniqueidentifier"); + + b.Property<DateTimeOffset>("CreatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("CreatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<int>("HireStatus") + .HasColumnType("int"); + + b.Property<DateTime?>("HireTime") + .HasColumnType("datetime2"); + + b.Property<bool>("IsDeleted") + .HasColumnType("bit"); + + b.Property<int?>("SignContractStatus") + .HasColumnType("int"); + + b.Property<DateTime?>("SignContractTime") + .HasColumnType("datetime2"); + + b.Property<int>("Sort") + .HasColumnType("int"); + + b.Property<Guid>("TaskInfoId") + .HasColumnType("uniqueidentifier"); + + b.Property<string>("TraceId") + .HasColumnType("nvarchar(max)"); + + b.Property<DateTimeOffset?>("UpdatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("UpdatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<Guid>("UserId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("Id"); + + b.HasIndex("TaskInfoId"); + + b.HasIndex("UserId"); + + b.ToTable("TaskInfoUser"); + }); + + modelBuilder.Entity("FlexJobApi.Core.User", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property<string>("Avatar") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("CityCode") + .HasColumnType("nvarchar(128)"); + + b.Property<Guid?>("CreatedEnterpriseId") + .HasColumnType("uniqueidentifier"); + + b.Property<DateTimeOffset>("CreatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("CreatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<Guid?>("EnterpriseId") + .HasColumnType("uniqueidentifier"); + + b.Property<bool>("IsCheckPhoneNumber") + .HasColumnType("bit"); + + b.Property<bool>("IsDeleted") + .HasColumnType("bit"); + + b.Property<bool>("IsReal") + .HasColumnType("bit"); + + b.Property<int>("Level") + .HasColumnType("int"); + + b.Property<string>("Name") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("nvarchar(32)"); + + b.Property<string>("Password") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("PhoneNumber") + .HasMaxLength(11) + .HasColumnType("nvarchar(11)"); + + b.Property<string>("ProvinceCode") + .HasColumnType("nvarchar(128)"); + + b.Property<int?>("RealAccess") + .HasColumnType("int"); + + b.Property<string>("Remark") + .HasColumnType("nvarchar(max)"); + + b.Property<int>("Sort") + .HasColumnType("int"); + + b.Property<int>("Status") + .HasColumnType("int"); + + b.Property<string>("TraceId") + .HasColumnType("nvarchar(max)"); + + b.Property<int>("Type") + .HasColumnType("int"); + + b.Property<DateTimeOffset?>("UpdatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("UpdatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<string>("UserName") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("nvarchar(32)"); + + b.Property<string>("WxmpOpenId") + .HasMaxLength(32) + .HasColumnType("nvarchar(32)"); + + b.HasKey("Id"); + + b.HasIndex("CityCode"); + + b.HasIndex("EnterpriseId"); + + b.HasIndex("ProvinceCode"); + + b.ToTable("User"); + + b.HasData( + new + { + Id = new Guid("11111111-1111-1111-1111-111111111111"), + CreatedTime = new DateTimeOffset(new DateTime(2000, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), new TimeSpan(0, 8, 0, 0, 0)), + IsCheckPhoneNumber = false, + IsDeleted = false, + IsReal = false, + Level = 999, + Name = "绠$悊鍛�", + Password = "iEYggKrMhQ3ASUGLobra1w==:fn/DsMJUbD9FGpvBvR3moMpMPptdxzZlourPVhU479I=", + Sort = 0, + Status = 10, + Type = 100, + UserName = "system" + }); + }); + + modelBuilder.Entity("FlexJobApi.Core.UserAuth", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property<string>("BankCard") + .HasMaxLength(32) + .HasColumnType("nvarchar(32)"); + + b.Property<string>("BankCardImg") + .HasColumnType("nvarchar(max)"); + + b.Property<Guid?>("CreatedEnterpriseId") + .HasColumnType("uniqueidentifier"); + + b.Property<DateTimeOffset>("CreatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("CreatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<string>("Identity") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("IdentityBackImg") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("IdentityImg") + .HasColumnType("nvarchar(max)"); + + b.Property<bool>("IsDeleted") + .HasColumnType("bit"); + + b.Property<string>("Name") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("nvarchar(32)"); + + b.Property<string>("PhoneNumber") + .HasMaxLength(11) + .HasColumnType("nvarchar(11)"); + + b.Property<int>("Sort") + .HasColumnType("int"); + + b.Property<string>("TraceId") + .HasColumnType("nvarchar(max)"); + + b.Property<DateTimeOffset?>("UpdatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("UpdatedUserId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("Id"); + + b.ToTable("UserAuth"); + }); + + modelBuilder.Entity("FlexJobApi.Core.UserBankCard", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property<string>("Bank") + .IsRequired() + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); + + b.Property<string>("Code") + .IsRequired() + .HasMaxLength(32) + .HasColumnType("nvarchar(32)"); + + b.Property<Guid?>("CreatedEnterpriseId") + .HasColumnType("uniqueidentifier"); + + b.Property<DateTimeOffset>("CreatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("CreatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<bool>("IsDeleted") + .HasColumnType("bit"); + + b.Property<string>("PhoneNumber") + .IsRequired() + .HasMaxLength(11) + .HasColumnType("nvarchar(11)"); + + b.Property<int>("Sort") + .HasColumnType("int"); + + b.Property<string>("TraceId") + .HasColumnType("nvarchar(max)"); + + b.Property<DateTimeOffset?>("UpdatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("UpdatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<Guid>("UserId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("Id"); + + b.HasIndex("UserId"); + + b.ToTable("UserBankCard"); + }); + + modelBuilder.Entity("FlexJobApi.Core.UserCredential", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property<string>("BackImg") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("Code") + .IsRequired() + .HasMaxLength(128) + .HasColumnType("nvarchar(128)"); + + b.Property<Guid?>("CreatedEnterpriseId") + .HasColumnType("uniqueidentifier"); + + b.Property<DateTimeOffset>("CreatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("CreatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<DateTime>("EndDate") + .HasColumnType("datetime2"); + + b.Property<string>("Img") + .HasColumnType("nvarchar(max)"); + + b.Property<bool>("IsDeleted") + .HasColumnType("bit"); + + b.Property<bool>("IsForever") + .HasColumnType("bit"); + + b.Property<string>("IssueUnit") + .HasColumnType("nvarchar(max)"); + + b.Property<int>("Sort") + .HasColumnType("int"); + + b.Property<DateTime>("StartDate") + .HasColumnType("datetime2"); + + b.Property<string>("TraceId") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("TypeCode") + .IsRequired() + .HasColumnType("nvarchar(128)"); + + b.Property<DateTimeOffset?>("UpdatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("UpdatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<Guid>("UserId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("Id"); + + b.HasIndex("TypeCode"); + + b.HasIndex("UserId"); + + b.ToTable("UserCredential"); + }); + + modelBuilder.Entity("FlexJobApi.Core.UserDepartment", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property<Guid?>("CreatedEnterpriseId") + .HasColumnType("uniqueidentifier"); + + b.Property<DateTimeOffset>("CreatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("CreatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<Guid>("DepartmentId") + .HasColumnType("uniqueidentifier"); + + b.Property<bool>("IsDeleted") + .HasColumnType("bit"); + + b.Property<int>("Sort") + .HasColumnType("int"); + + b.Property<string>("TraceId") + .HasColumnType("nvarchar(max)"); + + b.Property<DateTimeOffset?>("UpdatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("UpdatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<Guid>("UserId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("Id"); + + b.HasIndex("DepartmentId"); + + b.HasIndex("UserId"); + + b.ToTable("UserDepartment"); + }); + + modelBuilder.Entity("FlexJobApi.Core.UserExpectJob", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property<Guid?>("CreatedEnterpriseId") + .HasColumnType("uniqueidentifier"); + + b.Property<DateTimeOffset>("CreatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("CreatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<bool>("IsDeleted") + .HasColumnType("bit"); + + b.Property<string>("PersonalIdentityCode") + .IsRequired() + .HasColumnType("nvarchar(128)"); + + b.Property<int>("Sort") + .HasColumnType("int"); + + b.Property<string>("TraceId") + .HasColumnType("nvarchar(max)"); + + b.Property<DateTimeOffset?>("UpdatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("UpdatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<Guid>("UserId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("Id"); + + b.HasIndex("PersonalIdentityCode"); + + b.HasIndex("UserId"); + + b.ToTable("UserExpectJob"); + }); + + modelBuilder.Entity("FlexJobApi.Core.UserPhoto", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property<Guid?>("CreatedEnterpriseId") + .HasColumnType("uniqueidentifier"); + + b.Property<DateTimeOffset>("CreatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("CreatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<string>("Img") + .HasColumnType("nvarchar(max)"); + + b.Property<bool>("IsDeleted") + .HasColumnType("bit"); + + b.Property<int>("Sort") + .HasColumnType("int"); + + b.Property<string>("TraceId") + .HasColumnType("nvarchar(max)"); + + b.Property<DateTimeOffset?>("UpdatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("UpdatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<Guid>("UserId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("Id"); + + b.HasIndex("UserId"); + + b.ToTable("UserPhoto"); + }); + + modelBuilder.Entity("FlexJobApi.Core.UserResume", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property<Guid?>("CreatedEnterpriseId") + .HasColumnType("uniqueidentifier"); + + b.Property<DateTimeOffset>("CreatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("CreatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<string>("EducationalBackgroundCode") + .HasColumnType("nvarchar(128)"); + + b.Property<int?>("FreeTime") + .HasColumnType("int"); + + b.Property<int?>("Height") + .HasColumnType("int"); + + b.Property<bool>("IsDeleted") + .HasColumnType("bit"); + + b.Property<int?>("JobSeekingStatus") + .HasColumnType("int"); + + b.Property<string>("PersonalIdentityCode") + .HasColumnType("nvarchar(128)"); + + b.Property<int>("Sort") + .HasColumnType("int"); + + b.Property<string>("TraceId") + .HasColumnType("nvarchar(max)"); + + b.Property<DateTimeOffset?>("UpdatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("UpdatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<Guid>("UserId") + .HasColumnType("uniqueidentifier"); + + b.Property<int?>("Weight") + .HasColumnType("int"); + + b.Property<string>("WorkExperience") + .HasColumnType("nvarchar(max)"); + + b.Property<string>("WorkSeniority") + .HasColumnType("nvarchar(max)"); + + b.HasKey("Id"); + + b.HasIndex("EducationalBackgroundCode"); + + b.HasIndex("PersonalIdentityCode"); + + b.HasIndex("UserId"); + + b.ToTable("UserResume"); + }); + + modelBuilder.Entity("FlexJobApi.Core.UserRole", b => + { + b.Property<Guid>("Id") + .ValueGeneratedOnAdd() + .HasColumnType("uniqueidentifier"); + + b.Property<Guid?>("CreatedEnterpriseId") + .HasColumnType("uniqueidentifier"); + + b.Property<DateTimeOffset>("CreatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("CreatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<bool>("IsDeleted") + .HasColumnType("bit"); + + b.Property<Guid>("RoleId") + .HasColumnType("uniqueidentifier"); + + b.Property<int>("Sort") + .HasColumnType("int"); + + b.Property<string>("TraceId") + .HasColumnType("nvarchar(max)"); + + b.Property<DateTimeOffset?>("UpdatedTime") + .HasColumnType("datetimeoffset"); + + b.Property<Guid?>("UpdatedUserId") + .HasColumnType("uniqueidentifier"); + + b.Property<Guid>("UserId") + .HasColumnType("uniqueidentifier"); + + b.HasKey("Id"); + + b.HasIndex("RoleId"); + + b.HasIndex("UserId"); + + b.ToTable("UserRole"); + }); + + modelBuilder.Entity("FlexJobApi.Core.Department", b => + { + b.HasOne("FlexJobApi.Core.Enterprise", "Enterprise") + .WithMany("Departments") + .HasForeignKey("EnterpriseId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("FlexJobApi.Core.Department", "Parent") + .WithMany("Children") + .HasForeignKey("ParentId"); + + b.Navigation("Enterprise"); + + b.Navigation("Parent"); + }); + + modelBuilder.Entity("FlexJobApi.Core.DictionaryData", b => + { + b.HasOne("FlexJobApi.Core.DictionaryCategory", "Category") + .WithMany() + .HasForeignKey("CategoryId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("FlexJobApi.Core.DictionaryData", "Parent") + .WithMany("Children") + .HasForeignKey("ParentId"); + + b.Navigation("Category"); + + b.Navigation("Parent"); + }); + + modelBuilder.Entity("FlexJobApi.Core.Enterprise", b => + { + b.HasOne("FlexJobApi.Core.DictionaryData", "City") + .WithMany() + .HasForeignKey("CityCode") + .HasPrincipalKey("Code") + .OnDelete(DeleteBehavior.Restrict); + + b.HasOne("FlexJobApi.Core.DictionaryData", "IndustryType") + .WithMany() + .HasForeignKey("IndustryTypeCode") + .HasPrincipalKey("Code") + .OnDelete(DeleteBehavior.Restrict); + + b.HasOne("FlexJobApi.Core.DictionaryData", "Province") + .WithMany() + .HasForeignKey("ProvinceCode") + .HasPrincipalKey("Code") + .OnDelete(DeleteBehavior.Restrict); + + b.Navigation("City"); + + b.Navigation("IndustryType"); + + b.Navigation("Province"); + }); + + modelBuilder.Entity("FlexJobApi.Core.EnterpriseAuth", b => + { + b.HasOne("FlexJobApi.Core.Enterprise", "Enterprise") + .WithOne("EnterpriseAuth") + .HasForeignKey("FlexJobApi.Core.EnterpriseAuth", "Id") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Enterprise"); + }); + + modelBuilder.Entity("FlexJobApi.Core.Menu", b => + { + b.HasOne("FlexJobApi.Core.Menu", "Parent") + .WithMany("Children") + .HasForeignKey("ParentId"); + + b.Navigation("Parent"); + }); + + modelBuilder.Entity("FlexJobApi.Core.RoleMenu", b => + { + b.HasOne("FlexJobApi.Core.Menu", "Menu") + .WithMany() + .HasForeignKey("MenuId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("FlexJobApi.Core.Role", "Role") + .WithMany("RoleMenus") + .HasForeignKey("RoleId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Menu"); + + b.Navigation("Role"); + }); + + modelBuilder.Entity("FlexJobApi.Core.RoleResource", b => + { + b.HasOne("FlexJobApi.Core.Resource", "Resource") + .WithMany() + .HasForeignKey("ResourceId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("FlexJobApi.Core.Role", "Role") + .WithMany("RoleResources") + .HasForeignKey("RoleId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Resource"); + + b.Navigation("Role"); + }); + + modelBuilder.Entity("FlexJobApi.Core.TaskInfo", b => + { + b.HasOne("FlexJobApi.Core.DictionaryData", "City") + .WithMany() + .HasForeignKey("CityCode") + .HasPrincipalKey("Code") + .OnDelete(DeleteBehavior.Restrict); + + b.HasOne("FlexJobApi.Core.Enterprise", "Enterprise") + .WithMany() + .HasForeignKey("EnterpriseId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("FlexJobApi.Core.DictionaryData", "Province") + .WithMany() + .HasForeignKey("ProvinceCode") + .HasPrincipalKey("Code") + .OnDelete(DeleteBehavior.Restrict); + + b.Navigation("City"); + + b.Navigation("Enterprise"); + + b.Navigation("Province"); + }); + + modelBuilder.Entity("FlexJobApi.Core.TaskInfoBenefit", b => + { + b.HasOne("FlexJobApi.Core.DictionaryData", "Benefit") + .WithMany() + .HasForeignKey("BenefitCode") + .HasPrincipalKey("Code") + .OnDelete(DeleteBehavior.Restrict) + .IsRequired(); + + b.HasOne("FlexJobApi.Core.TaskInfo", "TaskInfo") + .WithMany("Benefits") + .HasForeignKey("TaskInfoId") + .OnDelete(DeleteBehavior.Restrict) + .IsRequired(); + + b.Navigation("Benefit"); + + b.Navigation("TaskInfo"); + }); + + modelBuilder.Entity("FlexJobApi.Core.TaskInfoCredentialLimit", b => + { + b.HasOne("FlexJobApi.Core.TaskInfo", "TaskInfo") + .WithMany("CredentialLimits") + .HasForeignKey("TaskInfoId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("FlexJobApi.Core.DictionaryData", "Type") + .WithMany() + .HasForeignKey("TypeCode") + .HasPrincipalKey("Code") + .OnDelete(DeleteBehavior.Restrict) + .IsRequired(); + + b.Navigation("TaskInfo"); + + b.Navigation("Type"); + }); + + modelBuilder.Entity("FlexJobApi.Core.TaskInfoUser", b => + { + b.HasOne("FlexJobApi.Core.TaskInfo", "TaskInfo") + .WithMany() + .HasForeignKey("TaskInfoId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("FlexJobApi.Core.User", "User") + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("TaskInfo"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("FlexJobApi.Core.User", b => + { + b.HasOne("FlexJobApi.Core.DictionaryData", "City") + .WithMany() + .HasForeignKey("CityCode") + .HasPrincipalKey("Code") + .OnDelete(DeleteBehavior.Restrict); + + b.HasOne("FlexJobApi.Core.Enterprise", "Enterprise") + .WithMany("Users") + .HasForeignKey("EnterpriseId"); + + b.HasOne("FlexJobApi.Core.DictionaryData", "Province") + .WithMany() + .HasForeignKey("ProvinceCode") + .HasPrincipalKey("Code") + .OnDelete(DeleteBehavior.Restrict); + + b.Navigation("City"); + + b.Navigation("Enterprise"); + + b.Navigation("Province"); + }); + + modelBuilder.Entity("FlexJobApi.Core.UserAuth", b => + { + b.HasOne("FlexJobApi.Core.User", "User") + .WithOne("UserAuth") + .HasForeignKey("FlexJobApi.Core.UserAuth", "Id") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("User"); + }); + + modelBuilder.Entity("FlexJobApi.Core.UserBankCard", b => + { + b.HasOne("FlexJobApi.Core.User", "User") + .WithMany("BankCards") + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("User"); + }); + + modelBuilder.Entity("FlexJobApi.Core.UserCredential", b => + { + b.HasOne("FlexJobApi.Core.DictionaryData", "Type") + .WithMany() + .HasForeignKey("TypeCode") + .HasPrincipalKey("Code") + .OnDelete(DeleteBehavior.Restrict) + .IsRequired(); + + b.HasOne("FlexJobApi.Core.User", "User") + .WithMany("UserCredentials") + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Type"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("FlexJobApi.Core.UserDepartment", b => + { + b.HasOne("FlexJobApi.Core.Department", "Department") + .WithMany() + .HasForeignKey("DepartmentId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("FlexJobApi.Core.User", "User") + .WithMany("UserDepartments") + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Department"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("FlexJobApi.Core.UserExpectJob", b => + { + b.HasOne("FlexJobApi.Core.DictionaryData", "PersonalIdentity") + .WithMany() + .HasForeignKey("PersonalIdentityCode") + .HasPrincipalKey("Code") + .OnDelete(DeleteBehavior.Restrict) + .IsRequired(); + + b.HasOne("FlexJobApi.Core.User", "User") + .WithMany("UserExpectJobs") + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("PersonalIdentity"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("FlexJobApi.Core.UserPhoto", b => + { + b.HasOne("FlexJobApi.Core.User", "User") + .WithMany("Photos") + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("User"); + }); + + modelBuilder.Entity("FlexJobApi.Core.UserResume", b => + { + b.HasOne("FlexJobApi.Core.DictionaryData", "EducationalBackground") + .WithMany() + .HasForeignKey("EducationalBackgroundCode") + .HasPrincipalKey("Code") + .OnDelete(DeleteBehavior.Restrict); + + b.HasOne("FlexJobApi.Core.DictionaryData", "PersonalIdentity") + .WithMany() + .HasForeignKey("PersonalIdentityCode") + .HasPrincipalKey("Code") + .OnDelete(DeleteBehavior.Restrict); + + b.HasOne("FlexJobApi.Core.User", "User") + .WithMany() + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("EducationalBackground"); + + b.Navigation("PersonalIdentity"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("FlexJobApi.Core.UserRole", b => + { + b.HasOne("FlexJobApi.Core.Role", "Role") + .WithMany("UserRoles") + .HasForeignKey("RoleId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("FlexJobApi.Core.User", "User") + .WithMany("UserRoles") + .HasForeignKey("UserId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Role"); + + b.Navigation("User"); + }); + + modelBuilder.Entity("FlexJobApi.Core.Department", b => + { + b.Navigation("Children"); + }); + + modelBuilder.Entity("FlexJobApi.Core.DictionaryData", b => + { + b.Navigation("Children"); + }); + + modelBuilder.Entity("FlexJobApi.Core.Enterprise", b => + { + b.Navigation("Departments"); + + b.Navigation("EnterpriseAuth"); + + b.Navigation("Users"); + }); + + modelBuilder.Entity("FlexJobApi.Core.Menu", b => + { + b.Navigation("Children"); + }); + + modelBuilder.Entity("FlexJobApi.Core.Role", b => + { + b.Navigation("RoleMenus"); + + b.Navigation("RoleResources"); + + b.Navigation("UserRoles"); + }); + + modelBuilder.Entity("FlexJobApi.Core.TaskInfo", b => + { + b.Navigation("Benefits"); + + b.Navigation("CredentialLimits"); + }); + + modelBuilder.Entity("FlexJobApi.Core.User", b => + { + b.Navigation("BankCards"); + + b.Navigation("Photos"); + + b.Navigation("UserAuth"); + + b.Navigation("UserCredentials"); + + b.Navigation("UserDepartments"); + + b.Navigation("UserExpectJobs"); + + b.Navigation("UserRoles"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/FlexJobApi.Database.Migrations/Migrations/20250808051314_UpdateResource0808.cs b/FlexJobApi.Database.Migrations/Migrations/20250808051314_UpdateResource0808.cs new file mode 100644 index 0000000..6b02b60 --- /dev/null +++ b/FlexJobApi.Database.Migrations/Migrations/20250808051314_UpdateResource0808.cs @@ -0,0 +1,54 @@ +锘縰sing Microsoft.EntityFrameworkCore.Migrations; + +#nullable disable + +namespace FlexJobApi.Database.Migrations.Migrations +{ + /// <inheritdoc /> + public partial class UpdateResource0808 : Migration + { + /// <inheritdoc /> + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.AlterColumn<string>( + name: "ResponseTypeName", + table: "Resource", + type: "nvarchar(max)", + nullable: true, + oldClrType: typeof(string), + oldType: "nvarchar(max)"); + + migrationBuilder.AlterColumn<string>( + name: "ResponseTypeFullName", + table: "Resource", + type: "nvarchar(max)", + nullable: true, + oldClrType: typeof(string), + oldType: "nvarchar(max)"); + } + + /// <inheritdoc /> + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.AlterColumn<string>( + name: "ResponseTypeName", + table: "Resource", + type: "nvarchar(max)", + nullable: false, + defaultValue: "", + oldClrType: typeof(string), + oldType: "nvarchar(max)", + oldNullable: true); + + migrationBuilder.AlterColumn<string>( + name: "ResponseTypeFullName", + table: "Resource", + type: "nvarchar(max)", + nullable: false, + defaultValue: "", + oldClrType: typeof(string), + oldType: "nvarchar(max)", + oldNullable: true); + } + } +} diff --git a/FlexJobApi.Database.Migrations/Migrations/DefaultDbContextModelSnapshot.cs b/FlexJobApi.Database.Migrations/Migrations/DefaultDbContextModelSnapshot.cs index 5e897d6..a6ae4ac 100644 --- a/FlexJobApi.Database.Migrations/Migrations/DefaultDbContextModelSnapshot.cs +++ b/FlexJobApi.Database.Migrations/Migrations/DefaultDbContextModelSnapshot.cs @@ -577,11 +577,9 @@ .HasColumnType("nvarchar(max)"); b.Property<string>("ResponseTypeFullName") - .IsRequired() .HasColumnType("nvarchar(max)"); b.Property<string>("ResponseTypeName") - .IsRequired() .HasColumnType("nvarchar(max)"); b.Property<string>("Route") diff --git a/FlexJobApi.Database.Migrations/REDEME.MD b/FlexJobApi.Database.Migrations/REDEME.MD index f2fd816..2be095d 100644 --- a/FlexJobApi.Database.Migrations/REDEME.MD +++ b/FlexJobApi.Database.Migrations/REDEME.MD @@ -1,7 +1,7 @@ -------------------------------主数据库--------------------------------------- 新增迁移文件 -dotnet ef migrations add UpdateUser0807 -s "../FlexJobApi.Web.Entry" -c DefaultDbContext +dotnet ef migrations add UpdateResource0808 -s "../FlexJobApi.Web.Entry" -c DefaultDbContext 删除迁移文件 dotnet ef migrations remove -s "../FlexJobApi.Web.Entry" -c DefaultDbContext diff --git a/FlexJobApi.FlexJobServer.Application/Tasks/Queries/TaskInfoQueryHandler.cs b/FlexJobApi.FlexJobServer.Application/Tasks/Queries/TaskInfoQueryHandler.cs index bf22bf4..119cc75 100644 --- a/FlexJobApi.FlexJobServer.Application/Tasks/Queries/TaskInfoQueryHandler.cs +++ b/FlexJobApi.FlexJobServer.Application/Tasks/Queries/TaskInfoQueryHandler.cs @@ -87,6 +87,7 @@ { q = q.Where(it => it.RecommendStatus == request.RecommendStatus); } + q = q.CustomOrderBy(request.PageModel.OrderInput); var s = from t in q join tu in rep.Change<TaskInfoUser>().AsQueryable().AsNoTracking() on t.Id equals tu.TaskInfoId into tug select new GetTaskInfosQueryResultItem @@ -102,7 +103,11 @@ Status = t.Status, BeginTime = t.BeginTime, EndTime = t.EndTime, - ReleaseStatus = t.ReleaseStatus + ReleaseStatus = t.ReleaseStatus, + CheckReceiveStatus = t.CheckReceiveStatus, + CreatedTime = t.CreatedTime, + RecommendStatus = t.RecommendStatus, + SettlementStatus = t.SettlementStatus }; return request.PageModel.GetPagedListAsync(s, cancellationToken); } diff --git a/FlexJobApi.UserServer.Application/Auths/Commands/VerifyCodeCommandHandler.cs b/FlexJobApi.UserServer.Application/Auths/Commands/VerifyCodeCommandHandler.cs new file mode 100644 index 0000000..00c5761 --- /dev/null +++ b/FlexJobApi.UserServer.Application/Auths/Commands/VerifyCodeCommandHandler.cs @@ -0,0 +1,39 @@ +锘縰sing FlexJobApi.Core; +using Mapster; +using MediatR; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace FlexJobApi.UserServer.Application +{ + /// <summary> + /// 楠岃瘉鐮佸懡浠ゅ鐞嗗櫒 + /// </summary> + public class VerifyCodeCommandHandler + : IRequestHandler<SendVerifyCodeCommand> + { + /// <summary> + /// 鍙戦�侀獙璇佺爜 + /// </summary> + /// <param name="request"></param> + /// <param name="cancellationToken"></param> + /// <returns></returns> + public Task Handle(SendVerifyCodeCommand request, CancellationToken cancellationToken) + { + throw new Exception(); + //var callback = new FriendlyEmptyCallback(); + //var code = new Random().Next(100000, 999999).ToString(); + //var entity = new SmsLog(); + //request.Adapt(entity); + //entity.Expiry = DateTime.Now.AddMinutes(30); + //entity.TemplateParam = new { code }.ToJson(); + //await utils.SendAsync(request.PhoneNumber, request.TemplateCode, entity.TemplateParam, cancellationToken); + //rep.Add(entity); + //await rep.SaveChangesAsync(cancellationToken); + //return new FriendlyEmptyCallback("楠岃瘉鐮佸凡鍙戦�侊紝璇锋煡鏀�"); + } + } +} diff --git a/FlexJobApi.UserServer.Application/FlexJobApi.UserServer.Application.xml b/FlexJobApi.UserServer.Application/FlexJobApi.UserServer.Application.xml index 6bf9d70..0595bc9 100644 --- a/FlexJobApi.UserServer.Application/FlexJobApi.UserServer.Application.xml +++ b/FlexJobApi.UserServer.Application/FlexJobApi.UserServer.Application.xml @@ -17,6 +17,19 @@ <member name="M:FlexJobApi.UserServer.Application.PasswordLoginCommandHandler.Handle(FlexJobApi.Core.PasswordLoginCommand,System.Threading.CancellationToken)"> <inheritdoc/> </member> + <member name="T:FlexJobApi.UserServer.Application.VerifyCodeCommandHandler"> + <summary> + 楠岃瘉鐮佸懡浠ゅ鐞嗗櫒 + </summary> + </member> + <member name="M:FlexJobApi.UserServer.Application.VerifyCodeCommandHandler.Handle(FlexJobApi.Core.SendVerifyCodeCommand,System.Threading.CancellationToken)"> + <summary> + 鍙戦�侀獙璇佺爜 + </summary> + <param name="request"></param> + <param name="cancellationToken"></param> + <returns></returns> + </member> <member name="T:FlexJobApi.UserServer.Application.GetAliyunOSSAcsQueryHandler"> <summary> 鑾峰彇闃块噷浜慜SS鎺堟潈淇℃伅 -- Gitblit v1.9.1