2025-08-06 | sunpengfei | ![]() |
2025-08-06 | sunpengfei | ![]() |
FlexJobApi.Core/Entities/Users/Enterprise.cs
@@ -19,40 +19,14 @@ } /// <summary> /// 企业认证方式 /// 企业认证Id /// </summary> public EnumEnterpriseRealMethod? EnterpriseRealMethod { get; set; } public Guid EnterpriseAuthId { get; set; } /// <summary> /// 企业全称 /// 企业认证 /// </summary> [Required] [MaxLength(128)] public string EnterpriseName { get; set; } /// <summary> /// 统一社会信用代码 /// </summary> [Required] [MaxLength(18)] public string SocietyCreditCode { get; set; } /// <summary> /// 营业执照照片 /// </summary> public string LicenseImage { get; set; } /// <summary> /// 法人姓名 /// </summary> [MaxLength(32)] public string LegalPerson { get; set; } /// <summary> /// 法人身份证号 /// </summary> [MaxLength(18)] public string LegalIdentity { get; set; } public EnterpriseAuth EnterpriseAuth { get; set; } /// <summary> /// 所在省份Id @@ -107,58 +81,30 @@ public string ContactEmail { get; set; } /// <summary> /// 法人或经办人实名方式 /// 支付通道 /// </summary> public EnumPersonalRealMethod? PersonalRealMethod { get; set; } public EnumPayAccess? PayAccess { get; set; } /// <summary> /// 法人或经办人姓名 /// 开户总行 /// </summary> [MaxLength(32)] public string Name { get; set; } public string BankName { get; set; } /// <summary> /// 法人或经办人身份证号 /// 开户支行 /// </summary> [MaxLength(18)] public string Identity { get; set; } public string BankBranchName { get; set; } /// <summary> /// 法人或经办人身份证人像面 /// </summary> public string IdentityImg { get; set; } /// <summary> /// 法人或经办人身份证国徽面 /// </summary> public string IdentityBackImg { get; set; } /// <summary> /// 法人或经办人银行卡号 /// 银行账户 /// </summary> [MaxLength(32)] public string BankCard { get; set; } /// <summary> /// 法人或经办人银行卡照片 /// 是否已校验银行账户 /// </summary> public string BankCardImg { get; set; } /// <summary> /// 法人或经办人手机号 /// </summary> [MaxLength(11)] public string PhoneNumber { get; set; } /// <summary> /// 是否委托经办人 /// </summary> public bool? Proxy { get; set; } /// <summary> /// 企业授权书 /// </summary> public string ProxyPowerAttorneyUrl { get; set; } public bool IsCheckedBankCard { get; set; } /// <summary> /// 实名通道 @@ -166,11 +112,29 @@ public EnumRealAccess? RealAccess { get; set; } /// <summary> /// 是否实名 /// 实名费用 /// </summary> public bool IsReal { get; set; } public decimal? RealVerifyCost { get; set; } /// <summary> /// 签约费用 /// </summary> public decimal? SignCost { get; set; } /// <summary> /// 一口价 /// </summary> public decimal? MergeSignCost { get; set; } /// <summary> /// 短信通道 /// </summary> public EnumSmsAccess? SmsAccess { get; set; } /// <summary> /// 短信费用 /// </summary> public decimal SmsCost { get; set; } /// <summary> /// 部门 FlexJobApi.Core/Entities/Users/EnterpriseAuth.cs
New file @@ -0,0 +1,110 @@ using 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 EnterpriseAuth : CommonEntity { /// <summary> /// 企业认证方式 /// </summary> public EnumEnterpriseRealMethod? EnterpriseRealMethod { get; set; } /// <summary> /// 企业全称 /// </summary> [Required] [MaxLength(128)] public string EnterpriseName { get; set; } /// <summary> /// 统一社会信用代码 /// </summary> [Required] [MaxLength(18)] public string SocietyCreditCode { get; set; } /// <summary> /// 营业执照照片 /// </summary> public string LicenseImage { get; set; } /// <summary> /// 法人姓名 /// </summary> [MaxLength(32)] public string LegalPerson { get; set; } /// <summary> /// 法人身份证号 /// </summary> [MaxLength(18)] public string LegalIdentity { get; set; } /// <summary> /// 法人或经办人实名方式 /// </summary> public EnumPersonalRealMethod? PersonalRealMethod { get; set; } /// <summary> /// 法人或经办人姓名 /// </summary> [MaxLength(32)] public string Name { get; set; } /// <summary> /// 法人或经办人身份证号 /// </summary> [MaxLength(18)] public string Identity { get; set; } /// <summary> /// 法人或经办人身份证人像面 /// </summary> public string IdentityImg { get; set; } /// <summary> /// 法人或经办人身份证国徽面 /// </summary> public string IdentityBackImg { get; set; } /// <summary> /// 法人或经办人银行卡号 /// </summary> [MaxLength(32)] public string BankCard { get; set; } /// <summary> /// 法人或经办人银行卡照片 /// </summary> public string BankCardImg { get; set; } /// <summary> /// 法人或经办人手机号 /// </summary> [MaxLength(11)] public string PhoneNumber { get; set; } /// <summary> /// 是否委托经办人 /// </summary> public bool? Proxy { get; set; } /// <summary> /// 企业授权书 /// </summary> public string ProxyPowerAttorneyUrl { get; set; } /// <summary> /// 是否实名 /// </summary> public bool IsReal { get; set; } } } FlexJobApi.Core/Entities/Users/UserAuth.cs
@@ -22,11 +22,6 @@ } /// <summary> /// 头像 /// </summary> public string Avatar { get; set; } /// <summary> /// 姓名 /// </summary> [Required] FlexJobApi.Core/Entities/Users/UserInfo.cs
@@ -48,6 +48,11 @@ public Enterprise Enterprise { get; set; } /// <summary> /// 头像 /// </summary> public string Avatar { get; set; } /// <summary> /// 微信开放Id /// </summary> [MaxLength(32)] FlexJobApi.Core/Enums/Common/EnumPayAccess.cs
New file @@ -0,0 +1,23 @@ using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace FlexJobApi.Core { /// <summary> /// 支付通道 /// </summary> public enum EnumPayAccess { /// <summary> /// 平安银行 /// </summary> PingAnBank = 10, /// <summary> /// 支付宝 /// </summary> Alipay = 20 } } FlexJobApi.Core/Enums/Users/EnumRealAccess.cs
@@ -14,6 +14,10 @@ /// <summary> /// 上上签 /// </summary> BestSign = 10 BestSign = 10, /// <summary> /// 支付宝信任签 /// </summary> AlipaySign = 20 } } FlexJobApi.Core/FlexJobApi.Core.xml
@@ -689,34 +689,14 @@ 企业 </summary> </member> <member name="P:FlexJobApi.Core.Enterprise.EnterpriseRealMethod"> <member name="P:FlexJobApi.Core.Enterprise.EnterpriseAuthId"> <summary> 企业认证方式 企业认证Id </summary> </member> <member name="P:FlexJobApi.Core.Enterprise.EnterpriseName"> <member name="P:FlexJobApi.Core.Enterprise.EnterpriseAuth"> <summary> 企业全称 </summary> </member> <member name="P:FlexJobApi.Core.Enterprise.SocietyCreditCode"> <summary> 统一社会信用代码 </summary> </member> <member name="P:FlexJobApi.Core.Enterprise.LicenseImage"> <summary> 营业执照照片 </summary> </member> <member name="P:FlexJobApi.Core.Enterprise.LegalPerson"> <summary> 法人姓名 </summary> </member> <member name="P:FlexJobApi.Core.Enterprise.LegalIdentity"> <summary> 法人身份证号 企业认证 </summary> </member> <member name="P:FlexJobApi.Core.Enterprise.ProvinceId"> @@ -769,54 +749,29 @@ 联系邮箱 </summary> </member> <member name="P:FlexJobApi.Core.Enterprise.PersonalRealMethod"> <member name="P:FlexJobApi.Core.Enterprise.PayAccess"> <summary> 法人或经办人实名方式 支付通道 </summary> </member> <member name="P:FlexJobApi.Core.Enterprise.Name"> <member name="P:FlexJobApi.Core.Enterprise.BankName"> <summary> 法人或经办人姓名 开户总行 </summary> </member> <member name="P:FlexJobApi.Core.Enterprise.Identity"> <member name="P:FlexJobApi.Core.Enterprise.BankBranchName"> <summary> 法人或经办人身份证号 </summary> </member> <member name="P:FlexJobApi.Core.Enterprise.IdentityImg"> <summary> 法人或经办人身份证人像面 </summary> </member> <member name="P:FlexJobApi.Core.Enterprise.IdentityBackImg"> <summary> 法人或经办人身份证国徽面 开户支行 </summary> </member> <member name="P:FlexJobApi.Core.Enterprise.BankCard"> <summary> 法人或经办人银行卡号 银行账户 </summary> </member> <member name="P:FlexJobApi.Core.Enterprise.BankCardImg"> <member name="P:FlexJobApi.Core.Enterprise.IsCheckedBankCard"> <summary> 法人或经办人银行卡照片 </summary> </member> <member name="P:FlexJobApi.Core.Enterprise.PhoneNumber"> <summary> 法人或经办人手机号 </summary> </member> <member name="P:FlexJobApi.Core.Enterprise.Proxy"> <summary> 是否委托经办人 </summary> </member> <member name="P:FlexJobApi.Core.Enterprise.ProxyPowerAttorneyUrl"> <summary> 企业授权书 是否已校验银行账户 </summary> </member> <member name="P:FlexJobApi.Core.Enterprise.RealAccess"> @@ -824,9 +779,29 @@ 实名通道 </summary> </member> <member name="P:FlexJobApi.Core.Enterprise.IsReal"> <member name="P:FlexJobApi.Core.Enterprise.RealVerifyCost"> <summary> 是否实名 实名费用 </summary> </member> <member name="P:FlexJobApi.Core.Enterprise.SignCost"> <summary> 签约费用 </summary> </member> <member name="P:FlexJobApi.Core.Enterprise.MergeSignCost"> <summary> 一口价 </summary> </member> <member name="P:FlexJobApi.Core.Enterprise.SmsAccess"> <summary> 短信通道 </summary> </member> <member name="P:FlexJobApi.Core.Enterprise.SmsCost"> <summary> 短信费用 </summary> </member> <member name="P:FlexJobApi.Core.Enterprise.Departments"> @@ -837,6 +812,96 @@ <member name="P:FlexJobApi.Core.Enterprise.UserInfos"> <summary> 用户信息 </summary> </member> <member name="T:FlexJobApi.Core.EnterpriseAuth"> <summary> 企业认证 </summary> </member> <member name="P:FlexJobApi.Core.EnterpriseAuth.EnterpriseRealMethod"> <summary> 企业认证方式 </summary> </member> <member name="P:FlexJobApi.Core.EnterpriseAuth.EnterpriseName"> <summary> 企业全称 </summary> </member> <member name="P:FlexJobApi.Core.EnterpriseAuth.SocietyCreditCode"> <summary> 统一社会信用代码 </summary> </member> <member name="P:FlexJobApi.Core.EnterpriseAuth.LicenseImage"> <summary> 营业执照照片 </summary> </member> <member name="P:FlexJobApi.Core.EnterpriseAuth.LegalPerson"> <summary> 法人姓名 </summary> </member> <member name="P:FlexJobApi.Core.EnterpriseAuth.LegalIdentity"> <summary> 法人身份证号 </summary> </member> <member name="P:FlexJobApi.Core.EnterpriseAuth.PersonalRealMethod"> <summary> 法人或经办人实名方式 </summary> </member> <member name="P:FlexJobApi.Core.EnterpriseAuth.Name"> <summary> 法人或经办人姓名 </summary> </member> <member name="P:FlexJobApi.Core.EnterpriseAuth.Identity"> <summary> 法人或经办人身份证号 </summary> </member> <member name="P:FlexJobApi.Core.EnterpriseAuth.IdentityImg"> <summary> 法人或经办人身份证人像面 </summary> </member> <member name="P:FlexJobApi.Core.EnterpriseAuth.IdentityBackImg"> <summary> 法人或经办人身份证国徽面 </summary> </member> <member name="P:FlexJobApi.Core.EnterpriseAuth.BankCard"> <summary> 法人或经办人银行卡号 </summary> </member> <member name="P:FlexJobApi.Core.EnterpriseAuth.BankCardImg"> <summary> 法人或经办人银行卡照片 </summary> </member> <member name="P:FlexJobApi.Core.EnterpriseAuth.PhoneNumber"> <summary> 法人或经办人手机号 </summary> </member> <member name="P:FlexJobApi.Core.EnterpriseAuth.Proxy"> <summary> 是否委托经办人 </summary> </member> <member name="P:FlexJobApi.Core.EnterpriseAuth.ProxyPowerAttorneyUrl"> <summary> 企业授权书 </summary> </member> <member name="P:FlexJobApi.Core.EnterpriseAuth.IsReal"> <summary> 是否实名 </summary> </member> <member name="T:FlexJobApi.Core.Menu"> @@ -1049,11 +1114,6 @@ 用户 </summary> </member> <member name="P:FlexJobApi.Core.UserAuth.Avatar"> <summary> 头像 </summary> </member> <member name="P:FlexJobApi.Core.UserAuth.Name"> <summary> 姓名 @@ -1147,6 +1207,11 @@ <member name="P:FlexJobApi.Core.UserInfo.Enterprise"> <summary> 企业 </summary> </member> <member name="P:FlexJobApi.Core.UserInfo.Avatar"> <summary> 头像 </summary> </member> <member name="P:FlexJobApi.Core.UserInfo.WxmpOpenId"> @@ -1604,6 +1669,21 @@ 降序 </summary> </member> <member name="T:FlexJobApi.Core.EnumPayAccess"> <summary> 支付通道 </summary> </member> <member name="F:FlexJobApi.Core.EnumPayAccess.PingAnBank"> <summary> 平安银行 </summary> </member> <member name="F:FlexJobApi.Core.EnumPayAccess.Alipay"> <summary> 支付宝 </summary> </member> <member name="T:FlexJobApi.Core.EnumQueueAccess"> <summary> 消息队列通道 @@ -1964,6 +2044,11 @@ 上上签 </summary> </member> <member name="F:FlexJobApi.Core.EnumRealAccess.AlipaySign"> <summary> 支付宝信任签 </summary> </member> <member name="T:FlexJobApi.Core.EnumRoleWebApiDataPower"> <summary> 角色接口数据权限 @@ -2078,6 +2163,16 @@ <member name="P:FlexJobApi.Core.ITreeData`1.Code"> <summary> 编号 </summary> </member> <member name="T:FlexJobApi.Core.DictionaryDataQueryResult"> <summary> 数据字典查询结果 </summary> </member> <member name="P:FlexJobApi.Core.DictionaryDataQueryResult.Content"> <summary> 内容 </summary> </member> <member name="T:FlexJobApi.Core.DeleteDictionaryCategoryCommand"> @@ -2475,6 +2570,16 @@ 获取阿里云OSS授权信息 </summary> </member> <member name="T:FlexJobApi.Core.GetCurrentLogierMenuQuery"> <summary> 获取当前登录用户菜单详情 </summary> </member> <member name="P:FlexJobApi.Core.GetCurrentLogierMenuQuery.Id"> <summary> Id </summary> </member> <member name="T:FlexJobApi.Core.GetCurrentLogierMenusQuery"> <summary> 获取当前登录用户菜单 @@ -2485,29 +2590,9 @@ 保存企业 </summary> </member> <member name="P:FlexJobApi.Core.SaveEnterpriseCommand.EnterpriseName"> <member name="P:FlexJobApi.Core.SaveEnterpriseCommand.EnterpriseAuth"> <summary> 企业全称 </summary> </member> <member name="P:FlexJobApi.Core.SaveEnterpriseCommand.SocietyCreditCode"> <summary> 统一社会信用代码 </summary> </member> <member name="P:FlexJobApi.Core.SaveEnterpriseCommand.LicenseImage"> <summary> 营业执照照片 </summary> </member> <member name="P:FlexJobApi.Core.SaveEnterpriseCommand.LegalPerson"> <summary> 法人姓名 </summary> </member> <member name="P:FlexJobApi.Core.SaveEnterpriseCommand.LegalIdentity"> <summary> 法人身份证号 企业认证 </summary> </member> <member name="P:FlexJobApi.Core.SaveEnterpriseCommand.ProvinceId"> @@ -2570,6 +2655,81 @@ 密码 </summary> </member> <member name="T:FlexJobApi.Core.SaveEnterpriseCommandAuth"> <summary> 保存企业-认证信息 </summary> </member> <member name="P:FlexJobApi.Core.SaveEnterpriseCommandAuth.EnterpriseName"> <summary> 企业全称 </summary> </member> <member name="P:FlexJobApi.Core.SaveEnterpriseCommandAuth.SocietyCreditCode"> <summary> 统一社会信用代码 </summary> </member> <member name="P:FlexJobApi.Core.SaveEnterpriseCommandAuth.LegalPerson"> <summary> 法人姓名 </summary> </member> <member name="P:FlexJobApi.Core.SaveEnterpriseCommandAuth.LegalIdentity"> <summary> 法人身份证号 </summary> </member> <member name="T:FlexJobApi.Core.SetEnterpriseElectronSignSettingCommand"> <summary> 设置企业电子签配置 </summary> </member> <member name="P:FlexJobApi.Core.SetEnterpriseElectronSignSettingCommand.Id"> <summary> Id </summary> </member> <member name="P:FlexJobApi.Core.SetEnterpriseElectronSignSettingCommand.RealAccess"> <summary> 实名通道 </summary> </member> <member name="P:FlexJobApi.Core.SetEnterpriseElectronSignSettingCommand.RealVerifyCost"> <summary> 实名费用 </summary> </member> <member name="P:FlexJobApi.Core.SetEnterpriseElectronSignSettingCommand.SignCost"> <summary> 签约费用 </summary> </member> <member name="P:FlexJobApi.Core.SetEnterpriseElectronSignSettingCommand.MergeSignCost"> <summary> 一口价 </summary> </member> <member name="T:FlexJobApi.Core.SetEnterpriseSmsSettingCommand"> <summary> 设置企业短信配置 </summary> </member> <member name="P:FlexJobApi.Core.SetEnterpriseSmsSettingCommand.Id"> <summary> Id </summary> </member> <member name="P:FlexJobApi.Core.SetEnterpriseSmsSettingCommand.SmsAccess"> <summary> 短信通道 </summary> </member> <member name="P:FlexJobApi.Core.SetEnterpriseSmsSettingCommand.SmsCost"> <summary> 短信费用 </summary> </member> <member name="T:FlexJobApi.Core.GetEnterprisesQuery"> <summary> 查询企业信息分页列表数据 @@ -2587,27 +2747,12 @@ </member> <member name="T:FlexJobApi.Core.GetEnterprisesQueryResultItem"> <summary> 查询企业信息分页列表数据 查询企业信息分页列表数据-结果-项 </summary> </member> <member name="P:FlexJobApi.Core.GetEnterprisesQueryResultItem.Id"> <summary> Id </summary> </member> <member name="P:FlexJobApi.Core.GetEnterprisesQueryResultItem.EnterpriseName"> <summary> 企业全称 </summary> </member> <member name="P:FlexJobApi.Core.GetEnterprisesQueryResultItem.LegalPerson"> <summary> 法人姓名 </summary> </member> <member name="P:FlexJobApi.Core.GetEnterprisesQueryResultItem.SocietyCreditCode"> <summary> 统一社会信用代码 </summary> </member> <member name="P:FlexJobApi.Core.GetEnterprisesQueryResultItem.Contacts"> @@ -2620,6 +2765,81 @@ 联系电话 </summary> </member> <member name="P:FlexJobApi.Core.GetEnterprisesQueryResultItem.ProvinceId"> <summary> 所在省份Id </summary> </member> <member name="P:FlexJobApi.Core.GetEnterprisesQueryResultItem.Province"> <summary> 所在省份 </summary> </member> <member name="P:FlexJobApi.Core.GetEnterprisesQueryResultItem.CityId"> <summary> 所在城市Id </summary> </member> <member name="P:FlexJobApi.Core.GetEnterprisesQueryResultItem.City"> <summary> 所在城市 </summary> </member> <member name="P:FlexJobApi.Core.GetEnterprisesQueryResultItem.IndustryTypeId"> <summary> 所属行业Id </summary> </member> <member name="P:FlexJobApi.Core.GetEnterprisesQueryResultItem.IndustryType"> <summary> 所属行业 </summary> </member> <member name="P:FlexJobApi.Core.GetEnterprisesQueryResultItem.IsCheckedBankCard"> <summary> 是否已校验银行账户 </summary> </member> <member name="P:FlexJobApi.Core.GetEnterprisesQueryResultItem.RealAccess"> <summary> 实名通道 </summary> </member> <member name="P:FlexJobApi.Core.GetEnterprisesQueryResultItem.SmsAccess"> <summary> 短信通道 </summary> </member> <member name="P:FlexJobApi.Core.GetEnterprisesQueryResultItem.IsConfigured"> <summary> 是否已配置 </summary> </member> <member name="T:FlexJobApi.Core.GetEnterprisesQueryResultItemAuth"> <summary> 查询企业信息分页列表数据-结果-项-认证 </summary> </member> <member name="P:FlexJobApi.Core.GetEnterprisesQueryResultItemAuth.EnterpriseName"> <summary> 企业全称 </summary> </member> <member name="P:FlexJobApi.Core.GetEnterprisesQueryResultItemAuth.LegalPerson"> <summary> 法人姓名 </summary> </member> <member name="P:FlexJobApi.Core.GetEnterprisesQueryResultItemAuth.SocietyCreditCode"> <summary> 统一社会信用代码 </summary> </member> <member name="P:FlexJobApi.Core.GetEnterprisesQueryResultItemAuth.IsReal"> <summary> 是否实名 </summary> </member> <member name="T:FlexJobApi.Core.DeleteMenuCommand"> <summary> 删除菜单 FlexJobApi.Core/Models/Common/DictionaryDataQueryResult.cs
New file @@ -0,0 +1,19 @@ using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace FlexJobApi.Core { /// <summary> /// 数据字典查询结果 /// </summary> public class DictionaryDataQueryResult { /// <summary> /// 内容 /// </summary> public string Content { get; set; } } } FlexJobApi.Core/Models/User/Auths/Queries/GetCurrentLogierMenuQuery.cs
New file @@ -0,0 +1,21 @@ using 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])] public class GetCurrentLogierMenuQuery : IRequest<GetMenuQueryResult> { /// <summary> /// Id /// </summary> public Guid Id { get; set; } } } FlexJobApi.Core/Models/User/Enterprises/Commands/SaveEnterpriseCommand.cs
@@ -14,35 +14,10 @@ public class SaveEnterpriseCommand : SaveDataCommand { /// <summary> /// 企业全称 /// 企业认证 /// </summary> [Required] [MaxLength(128)] public string EnterpriseName { get; set; } /// <summary> /// 统一社会信用代码 /// </summary> [Required] [MaxLength(18)] public string SocietyCreditCode { get; set; } /// <summary> /// 营业执照照片 /// </summary> public string LicenseImage { get; set; } /// <summary> /// 法人姓名 /// </summary> [MaxLength(32)] public string LegalPerson { get; set; } /// <summary> /// 法人身份证号 /// </summary> [MaxLength(18)] public string LegalIdentity { get; set; } public SaveEnterpriseCommandAuth EnterpriseAuth { get; set; } /// <summary> /// 所在省份Id @@ -106,4 +81,36 @@ /// </summary> public string Password { get; set; } } /// <summary> /// 保存企业-认证信息 /// </summary> public class SaveEnterpriseCommandAuth { /// <summary> /// 企业全称 /// </summary> [Required] [MaxLength(128)] public string EnterpriseName { get; set; } /// <summary> /// 统一社会信用代码 /// </summary> [Required] [MaxLength(18)] public string SocietyCreditCode { get; set; } /// <summary> /// 法人姓名 /// </summary> [MaxLength(32)] public string LegalPerson { get; set; } /// <summary> /// 法人身份证号 /// </summary> [MaxLength(18)] public string LegalIdentity { get; set; } } } FlexJobApi.Core/Models/User/Enterprises/Commands/SetEnterpriseElectronSignSettingCommand.cs
New file @@ -0,0 +1,43 @@ using MediatR; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace FlexJobApi.Core { /// <summary> /// 设置企业电子签配置 /// </summary> [Resource([EnumResourceController.Enterprise])] public class SetEnterpriseElectronSignSettingCommand : IRequest<Guid> { /// <summary> /// Id /// </summary> public Guid Id { get; set; } /// <summary> /// 实名通道 /// </summary> public EnumRealAccess? RealAccess { get; set; } /// <summary> /// 实名费用 /// </summary> public decimal? RealVerifyCost { get; set; } /// <summary> /// 签约费用 /// </summary> public decimal? SignCost { get; set; } /// <summary> /// 一口价 /// </summary> public decimal? MergeSignCost { get; set; } } } FlexJobApi.Core/Models/User/Enterprises/Commands/SetEnterpriseSmsSettingCommand.cs
New file @@ -0,0 +1,31 @@ using MediatR; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace FlexJobApi.Core { /// <summary> /// 设置企业短信配置 /// </summary> [Resource([EnumResourceController.Enterprise])] public class SetEnterpriseSmsSettingCommand : IRequest<Guid> { /// <summary> /// Id /// </summary> public Guid Id { get; set; } /// <summary> /// 短信通道 /// </summary> public EnumSmsAccess? SmsAccess { get; set; } /// <summary> /// 短信费用 /// </summary> public decimal SmsCost { get; set; } } } FlexJobApi.Core/Models/User/Enterprises/Queries/GetEnterprisesQuery.cs
@@ -1,4 +1,6 @@ using MediatR; using Mapster; using MediatR; using Newtonsoft.Json; using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; @@ -26,7 +28,7 @@ } /// <summary> /// 查询企业信息分页列表数据 /// 查询企业信息分页列表数据-结果-项 /// </summary> public class GetEnterprisesQueryResultItem { @@ -35,6 +37,76 @@ /// </summary> public Guid Id { get; set; } /// <summary> /// 联系人 /// </summary> public string Contacts { get; set; } /// <summary> /// 联系电话 /// </summary> public string ContactNumber { get; set; } /// <summary> /// 所在省份Id /// </summary> public Guid? ProvinceId { get; set; } /// <summary> /// 所在省份 /// </summary> public DictionaryDataQueryResult Province { get; set; } /// <summary> /// 所在城市Id /// </summary> public Guid? CityId { get; set; } /// <summary> /// 所在城市 /// </summary> public DictionaryDataQueryResult City { get; set; } /// <summary> /// 所属行业Id /// </summary> public Guid? IndustryTypeId { get; set; } /// <summary> /// 所属行业 /// </summary> public DictionaryDataQueryResult IndustryType { get; set; } /// <summary> /// 是否已校验银行账户 /// </summary> [JsonIgnore] public bool IsCheckedBankCard { get; set; } /// <summary> /// 实名通道 /// </summary> [JsonIgnore] public EnumRealAccess? RealAccess { get; set; } /// <summary> /// 短信通道 /// </summary> [JsonIgnore] public EnumSmsAccess? SmsAccess { get; set; } /// <summary> /// 是否已配置 /// </summary> [AdaptIgnore] public bool IsConfigured => IsCheckedBankCard && RealAccess.HasValue && SmsAccess.HasValue; } /// <summary> /// 查询企业信息分页列表数据-结果-项-认证 /// </summary> public class GetEnterprisesQueryResultItemAuth { /// <summary> /// 企业全称 /// </summary> @@ -51,14 +123,8 @@ public string SocietyCreditCode { get; set; } /// <summary> /// 联系人 /// 是否实名 /// </summary> public string Contacts { get; set; } /// <summary> /// 联系电话 /// </summary> public string ContactNumber { get; set; } public bool IsReal { get; set; } } } FlexJobApi.Database.Migrations/Migrations/20250806082829_UpdateEnterprise.Designer.cs
New file @@ -0,0 +1,2104 @@ // <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("20250806082829_UpdateEnterprise")] partial class UpdateEnterprise { /// <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<DateTimeOffset>("CreatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("CreatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("创建操作人"); b.Property<Guid>("EnterpriseId") .HasColumnType("uniqueidentifier") .HasComment("企业Id"); b.Property<bool>("IsDeleted") .HasColumnType("bit") .HasComment("是否删除"); b.Property<bool>("IsDisabled") .HasColumnType("bit") .HasComment("是否禁用"); b.Property<string>("Name") .IsRequired() .HasColumnType("nvarchar(max)") .HasComment("名称"); b.Property<Guid?>("ParentId") .HasColumnType("uniqueidentifier") .HasComment("上级Id"); b.Property<string>("Path") .HasColumnType("nvarchar(max)") .HasComment("部门路径"); b.Property<string>("Remark") .HasColumnType("nvarchar(max)") .HasComment("备注"); b.Property<int>("Sort") .HasColumnType("int") .HasComment("排序"); b.Property<string>("TraceId") .HasColumnType("nvarchar(max)") .HasComment("跟踪Id"); b.Property<DateTimeOffset?>("UpdatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("UpdatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("最后更新操作人"); b.HasKey("Id"); b.HasIndex("EnterpriseId"); b.HasIndex("ParentId"); b.ToTable("Department", t => { t.HasComment("部门"); }); }); modelBuilder.Entity("FlexJobApi.Core.DictionaryCategory", b => { b.Property<Guid>("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property<string>("Code") .IsRequired() .HasMaxLength(128) .HasColumnType("nvarchar(128)") .HasComment("编号"); b.Property<DateTimeOffset>("CreatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("CreatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("创建操作人"); b.Property<string>("FieldNames") .HasColumnType("nvarchar(max)") .HasComment("字段名(逗号隔开)"); b.Property<bool>("IsDeleted") .HasColumnType("bit") .HasComment("是否删除"); b.Property<string>("Name") .IsRequired() .HasMaxLength(128) .HasColumnType("nvarchar(128)") .HasComment("名称"); b.Property<string>("Remark") .HasColumnType("nvarchar(max)") .HasComment("备注"); b.Property<int>("Sort") .HasColumnType("int") .HasComment("排序"); b.Property<string>("TraceId") .HasColumnType("nvarchar(max)") .HasComment("跟踪Id"); b.Property<DateTimeOffset?>("UpdatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("UpdatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("最后更新操作人"); b.HasKey("Id"); b.ToTable("DictionaryCategory", t => { t.HasComment("字典类别"); }); }); modelBuilder.Entity("FlexJobApi.Core.DictionaryData", b => { b.Property<Guid>("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property<Guid>("CategoryId") .HasColumnType("uniqueidentifier") .HasComment("类别Id"); b.Property<string>("Code") .HasMaxLength(128) .HasColumnType("nvarchar(128)") .HasComment("编号"); b.Property<string>("Content") .IsRequired() .HasColumnType("nvarchar(max)") .HasComment("显示内容"); b.Property<DateTimeOffset>("CreatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("CreatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("创建操作人"); b.Property<string>("Field1") .HasColumnType("nvarchar(max)") .HasComment("字段1"); b.Property<string>("Field2") .HasColumnType("nvarchar(max)") .HasComment("字段2"); b.Property<string>("Field3") .HasColumnType("nvarchar(max)") .HasComment("字段3"); b.Property<string>("Field4") .HasColumnType("nvarchar(max)") .HasComment("字段4"); b.Property<string>("Field5") .HasColumnType("nvarchar(max)") .HasComment("字段5"); b.Property<bool>("IsDeleted") .HasColumnType("bit") .HasComment("是否删除"); b.Property<bool>("IsDisabled") .HasColumnType("bit") .HasComment("是否禁用"); b.Property<Guid?>("ParentId") .HasColumnType("uniqueidentifier") .HasComment("上级Id"); b.Property<string>("Path") .HasColumnType("nvarchar(max)") .HasComment("字典路径"); b.Property<int>("Sort") .HasColumnType("int") .HasComment("排序"); b.Property<string>("TraceId") .HasColumnType("nvarchar(max)") .HasComment("跟踪Id"); b.Property<DateTimeOffset?>("UpdatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("UpdatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("最后更新操作人"); b.HasKey("Id"); b.HasIndex("CategoryId"); b.HasIndex("ParentId"); b.ToTable("DictionaryData", t => { t.HasComment("字典数据"); }); }); 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)") .HasComment("法人或经办人银行卡号"); b.Property<string>("BankName") .HasColumnType("nvarchar(max)"); b.Property<Guid?>("CityId") .HasColumnType("uniqueidentifier"); 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)") .HasComment("联系人"); b.Property<DateTimeOffset>("CreatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("CreatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("创建操作人"); b.Property<Guid>("EnterpriseAuthId") .HasColumnType("uniqueidentifier"); b.Property<Guid?>("IndustryTypeId") .HasColumnType("uniqueidentifier"); b.Property<bool>("IsCheckedBankCard") .HasColumnType("bit"); b.Property<bool>("IsDeleted") .HasColumnType("bit") .HasComment("是否删除"); b.Property<string>("MainBusiness") .HasColumnType("nvarchar(max)"); b.Property<decimal?>("MergeSignCost") .HasColumnType("decimal(18,2)"); b.Property<int?>("PayAccess") .HasColumnType("int"); b.Property<Guid?>("ProvinceId") .HasColumnType("uniqueidentifier"); b.Property<int?>("RealAccess") .HasColumnType("int") .HasComment("实名通道"); 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<int>("Sort") .HasColumnType("int") .HasComment("排序"); b.Property<string>("TraceId") .HasColumnType("nvarchar(max)") .HasComment("跟踪Id"); b.Property<DateTimeOffset?>("UpdatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("UpdatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("最后更新操作人"); b.HasKey("Id"); b.HasIndex("CityId"); b.HasIndex("EnterpriseAuthId"); b.HasIndex("IndustryTypeId"); b.HasIndex("ProvinceId"); b.ToTable("Enterprise", t => { t.HasComment("企业"); }); }); 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<DateTimeOffset>("CreatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("CreatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("创建操作人"); 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") .HasComment("是否删除"); 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>("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") .HasComment("排序"); b.Property<string>("TraceId") .HasColumnType("nvarchar(max)") .HasComment("跟踪Id"); b.Property<DateTimeOffset?>("UpdatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("UpdatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("最后更新操作人"); 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") .HasComment("客户端类型"); b.Property<string>("Code") .IsRequired() .HasColumnType("nvarchar(max)") .HasComment("编号"); b.Property<DateTimeOffset>("CreatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("CreatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("创建操作人"); b.Property<string>("Group") .HasColumnType("nvarchar(max)") .HasComment("分组名称(用于按钮/字段)"); b.Property<string>("Icon") .HasColumnType("nvarchar(max)") .HasComment("图标"); b.Property<bool>("IsCache") .HasColumnType("bit") .HasComment("是否缓存"); b.Property<bool>("IsDeleted") .HasColumnType("bit") .HasComment("是否删除"); b.Property<bool>("IsDisabled") .HasColumnType("bit") .HasComment("是否禁用"); b.Property<string>("Location") .HasColumnType("nvarchar(max)") .HasComment("位置(用于按钮)"); b.Property<string>("Name") .IsRequired() .HasMaxLength(128) .HasColumnType("nvarchar(128)") .HasComment("名称"); b.Property<Guid?>("ParentId") .HasColumnType("uniqueidentifier") .HasComment("上级Id"); b.Property<string>("Path") .HasColumnType("nvarchar(max)") .HasComment("菜单路径"); b.Property<string>("Remark") .HasColumnType("nvarchar(max)") .HasComment("备注"); b.Property<int>("Sort") .HasColumnType("int") .HasComment("排序"); b.Property<string>("TraceId") .HasColumnType("nvarchar(max)") .HasComment("跟踪Id"); b.Property<int>("Type") .HasColumnType("int") .HasComment("类型"); b.Property<DateTimeOffset?>("UpdatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("UpdatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("最后更新操作人"); b.Property<string>("Url") .HasColumnType("nvarchar(max)") .HasComment("链接地址"); b.Property<int>("UserType") .HasColumnType("int") .HasComment("用户类型"); b.Property<int>("VisitLevel") .HasColumnType("int") .HasComment("访问级别"); b.Property<string>("Width") .HasColumnType("nvarchar(max)") .HasComment("列宽(用于按钮/列/元素)"); b.HasKey("Id"); b.HasIndex("ParentId"); b.ToTable("Menu", t => { t.HasComment("菜单"); }); }); modelBuilder.Entity("FlexJobApi.Core.Resource", b => { b.Property<Guid>("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property<string>("ActionName") .HasColumnType("nvarchar(max)") .HasComment("委托名称"); b.Property<string>("ActionSummary") .HasColumnType("nvarchar(max)") .HasComment("委托摘要"); b.Property<bool>("AllowAnonymous") .HasColumnType("bit") .HasComment("忽略权限"); b.Property<string>("ApplicationName") .HasColumnType("nvarchar(max)") .HasComment("应用名称"); b.Property<string>("Code") .IsRequired() .HasColumnType("nvarchar(max)") .HasComment("编号"); b.Property<int>("Controller") .HasColumnType("int") .HasComment("控制器"); b.Property<string>("ControllerSummary") .HasColumnType("nvarchar(max)") .HasComment("控制器摘要"); b.Property<DateTimeOffset>("CreatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("CreatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("创建操作人"); b.Property<string>("DynamicAssemblyName") .HasColumnType("nvarchar(max)") .HasComment("动态程序集名称"); b.Property<bool>("IsDeleted") .HasColumnType("bit") .HasComment("是否删除"); b.Property<bool>("IsExpired") .HasColumnType("bit") .HasComment("是否已过期"); b.Property<int>("Method") .HasColumnType("int") .HasComment("请求方式"); b.Property<string>("Name") .IsRequired() .HasColumnType("nvarchar(max)") .HasComment("名称"); b.Property<string>("RequestTypeFullName") .IsRequired() .HasColumnType("nvarchar(max)") .HasComment("请求类型全名"); b.Property<string>("RequestTypeName") .IsRequired() .HasColumnType("nvarchar(max)") .HasComment("请求类型名称"); b.Property<string>("ResponseTypeFullName") .IsRequired() .HasColumnType("nvarchar(max)") .HasComment("响应类型全名"); b.Property<string>("ResponseTypeName") .IsRequired() .HasColumnType("nvarchar(max)") .HasComment("响应类型名称"); b.Property<string>("Route") .IsRequired() .HasColumnType("nvarchar(max)") .HasComment("路由"); b.Property<string>("RouteArea") .HasColumnType("nvarchar(max)") .HasComment("路由区域"); b.Property<int>("Service") .HasColumnType("int") .HasComment("服务"); b.Property<string>("ServiceName") .HasColumnType("nvarchar(max)") .HasComment("服务名称"); b.Property<int>("Sort") .HasColumnType("int") .HasComment("排序"); b.Property<string>("TraceId") .HasColumnType("nvarchar(max)") .HasComment("跟踪Id"); b.Property<DateTimeOffset?>("UpdatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("UpdatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("最后更新操作人"); b.HasKey("Id"); b.ToTable("Resource", t => { t.HasComment("资源"); }); }); modelBuilder.Entity("FlexJobApi.Core.Role", b => { b.Property<Guid>("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property<int>("ClientType") .HasColumnType("int") .HasComment("客户端类型"); b.Property<DateTimeOffset>("CreatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("CreatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("创建操作人"); b.Property<int>("DataPower") .HasColumnType("int") .HasComment("数据权限"); b.Property<bool>("IsDeleted") .HasColumnType("bit") .HasComment("是否删除"); b.Property<bool>("IsDisabled") .HasColumnType("bit") .HasComment("是否禁用"); b.Property<int>("MinLevel") .HasColumnType("int") .HasComment("最低级别"); b.Property<string>("Name") .IsRequired() .HasMaxLength(128) .HasColumnType("nvarchar(128)") .HasComment("名称"); b.Property<string>("Remark") .HasColumnType("nvarchar(max)") .HasComment("备注"); b.Property<int>("Sort") .HasColumnType("int") .HasComment("排序"); b.Property<string>("TraceId") .HasColumnType("nvarchar(max)") .HasComment("跟踪Id"); b.Property<DateTimeOffset?>("UpdatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("UpdatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("最后更新操作人"); b.Property<int>("UserType") .HasColumnType("int") .HasComment("用户类型"); b.HasKey("Id"); b.ToTable("Role", t => { t.HasComment("角色"); }); }); modelBuilder.Entity("FlexJobApi.Core.RoleMenu", b => { b.Property<Guid>("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property<DateTimeOffset>("CreatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("CreatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("创建操作人"); b.Property<bool>("IsDeleted") .HasColumnType("bit") .HasComment("是否删除"); b.Property<Guid>("MenuId") .HasColumnType("uniqueidentifier") .HasComment("菜单Id"); b.Property<Guid>("RoleId") .HasColumnType("uniqueidentifier") .HasComment("角色Id"); b.Property<int>("Sort") .HasColumnType("int") .HasComment("排序"); b.Property<string>("TraceId") .HasColumnType("nvarchar(max)") .HasComment("跟踪Id"); b.Property<DateTimeOffset?>("UpdatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("UpdatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("最后更新操作人"); b.HasKey("Id"); b.HasIndex("MenuId"); b.HasIndex("RoleId"); b.ToTable("RoleMenu", t => { t.HasComment("角色菜单"); }); }); modelBuilder.Entity("FlexJobApi.Core.RoleResource", b => { b.Property<Guid>("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property<DateTimeOffset>("CreatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("CreatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("创建操作人"); b.Property<int>("DataPower") .HasColumnType("int") .HasComment("数据权限"); b.Property<bool>("IsDeleted") .HasColumnType("bit") .HasComment("是否删除"); b.Property<Guid>("ResourceId") .HasColumnType("uniqueidentifier") .HasComment("资源Id"); b.Property<Guid>("RoleId") .HasColumnType("uniqueidentifier") .HasComment("角色Id"); b.Property<int>("Sort") .HasColumnType("int") .HasComment("排序"); b.Property<string>("TraceId") .HasColumnType("nvarchar(max)") .HasComment("跟踪Id"); b.Property<DateTimeOffset?>("UpdatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("UpdatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("最后更新操作人"); b.HasKey("Id"); b.HasIndex("ResourceId"); b.HasIndex("RoleId"); b.ToTable("RoleResource", t => { t.HasComment("角色资源"); }); }); modelBuilder.Entity("FlexJobApi.Core.TaskInfo", b => { b.Property<Guid>("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property<string>("Address") .HasColumnType("nvarchar(max)") .HasComment("任务地点详细地址"); b.Property<int>("AgeMaxLimit") .HasColumnType("int") .HasComment("年龄范围大"); b.Property<int>("AgeMinLimit") .HasColumnType("int") .HasComment("年龄范围最小"); b.Property<DateTime>("BeginTime") .HasColumnType("datetime2") .HasComment("任务开始时间"); b.Property<int>("BillingMethod") .HasColumnType("int") .HasComment("计费方式"); b.Property<Guid>("CityId") .HasColumnType("uniqueidentifier") .HasComment("任务地点所属区域Id"); b.Property<DateTimeOffset>("CreatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("CreatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("创建操作人"); b.Property<DateTime>("EndTime") .HasColumnType("datetime2") .HasComment("任务结束时间"); b.Property<Guid>("EnterpriseId") .HasColumnType("uniqueidentifier") .HasComment("企业Id"); b.Property<int>("GenderLimit") .HasColumnType("int") .HasComment("性别要求"); b.Property<bool>("IsDeleted") .HasColumnType("bit") .HasComment("是否删除"); b.Property<string>("Name") .IsRequired() .HasColumnType("nvarchar(max)") .HasComment("任务名称"); b.Property<decimal>("ServiceFee") .HasColumnType("decimal(18,2)") .HasComment("服务费"); b.Property<int>("SettlementCycle") .HasColumnType("int") .HasComment("结算方式"); b.Property<int>("Sort") .HasColumnType("int") .HasComment("排序"); b.Property<string>("TraceId") .HasColumnType("nvarchar(max)") .HasComment("跟踪Id"); b.Property<DateTimeOffset?>("UpdatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("UpdatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("最后更新操作人"); b.HasKey("Id"); b.HasIndex("CityId"); b.HasIndex("EnterpriseId"); b.ToTable("TaskInfo", t => { t.HasComment("任务信息"); }); }); modelBuilder.Entity("FlexJobApi.Core.TaskInfoBenefit", b => { b.Property<Guid>("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property<Guid>("BenefitId") .HasColumnType("uniqueidentifier") .HasComment("福利Id"); b.Property<Guid>("BenefitId1") .HasColumnType("uniqueidentifier"); b.Property<DateTimeOffset>("CreatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("CreatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("创建操作人"); b.Property<bool>("IsDeleted") .HasColumnType("bit") .HasComment("是否删除"); b.Property<int>("Sort") .HasColumnType("int") .HasComment("排序"); b.Property<Guid>("TaskInfoId") .HasColumnType("uniqueidentifier") .HasComment("任务Id"); b.Property<string>("TraceId") .HasColumnType("nvarchar(max)") .HasComment("跟踪Id"); b.Property<DateTimeOffset?>("UpdatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("UpdatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("最后更新操作人"); b.HasKey("Id"); b.HasIndex("BenefitId"); b.HasIndex("BenefitId1"); b.ToTable("TaskInfoBenefit", t => { t.HasComment("任务福利"); }); }); modelBuilder.Entity("FlexJobApi.Core.TaskInfoCredentialLimit", b => { b.Property<Guid>("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property<DateTimeOffset>("CreatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("CreatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("创建操作人"); b.Property<bool>("IsDeleted") .HasColumnType("bit") .HasComment("是否删除"); b.Property<int>("Sort") .HasColumnType("int") .HasComment("排序"); b.Property<Guid>("TaskInfoId") .HasColumnType("uniqueidentifier") .HasComment("任务Id"); b.Property<string>("TraceId") .HasColumnType("nvarchar(max)") .HasComment("跟踪Id"); b.Property<Guid?>("TypeId") .HasColumnType("uniqueidentifier") .HasComment("证书类型Id"); b.Property<DateTimeOffset?>("UpdatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("UpdatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("最后更新操作人"); b.HasKey("Id"); b.HasIndex("TaskInfoId"); b.HasIndex("TypeId"); b.ToTable("TaskInfoCredentialLimit"); }); modelBuilder.Entity("FlexJobApi.Core.TaskInfoUser", b => { b.Property<Guid>("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property<DateTimeOffset>("CreatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("CreatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("创建操作人"); b.Property<int>("HireStatus") .HasColumnType("int") .HasComment("录用状态"); b.Property<DateTime?>("HireTime") .HasColumnType("datetime2") .HasComment("录用时间"); b.Property<bool>("IsDeleted") .HasColumnType("bit") .HasComment("是否删除"); b.Property<int?>("SignContractStatus") .HasColumnType("int") .HasComment("签约状态"); b.Property<DateTime?>("SignContractTime") .HasColumnType("datetime2") .HasComment("签约时间"); b.Property<int>("Sort") .HasColumnType("int") .HasComment("排序"); b.Property<Guid>("TaskInfoId") .HasColumnType("uniqueidentifier") .HasComment("任务Id"); b.Property<string>("TraceId") .HasColumnType("nvarchar(max)") .HasComment("跟踪Id"); b.Property<DateTimeOffset?>("UpdatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("UpdatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("最后更新操作人"); b.Property<Guid>("UserInfoId") .HasColumnType("uniqueidentifier") .HasComment("用户信息Id"); b.HasKey("Id"); b.HasIndex("TaskInfoId"); b.HasIndex("UserInfoId"); b.ToTable("TaskInfoUser", t => { t.HasComment("任务用户信息"); }); }); modelBuilder.Entity("FlexJobApi.Core.UserAuth", b => { b.Property<Guid>("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property<string>("BankCard") .HasMaxLength(32) .HasColumnType("nvarchar(32)") .HasComment("银行卡号"); b.Property<string>("BankCardImg") .HasColumnType("nvarchar(max)") .HasComment("银行卡照片"); b.Property<DateTimeOffset>("CreatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("CreatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("创建操作人"); b.Property<string>("Identity") .HasColumnType("nvarchar(max)") .HasComment("身份证号"); b.Property<string>("IdentityBackImg") .HasColumnType("nvarchar(max)") .HasComment("身份证国徽面"); b.Property<string>("IdentityImg") .HasColumnType("nvarchar(max)") .HasComment("身份证人像面"); b.Property<bool>("IsCheckPhoneNumber") .HasColumnType("bit") .HasComment("是否已校验手机号"); b.Property<bool>("IsDeleted") .HasColumnType("bit") .HasComment("是否删除"); b.Property<bool>("IsReal") .HasColumnType("bit") .HasComment("是否实名"); b.Property<string>("Name") .IsRequired() .HasMaxLength(32) .HasColumnType("nvarchar(32)") .HasComment("姓名"); b.Property<string>("Password") .HasColumnType("nvarchar(max)") .HasComment("密码"); b.Property<string>("PhoneNumber") .HasMaxLength(11) .HasColumnType("nvarchar(11)") .HasComment("手机号"); b.Property<int?>("RealAccess") .HasColumnType("int") .HasComment("实名通道"); b.Property<int>("Sort") .HasColumnType("int") .HasComment("排序"); b.Property<string>("TraceId") .HasColumnType("nvarchar(max)") .HasComment("跟踪Id"); b.Property<DateTimeOffset?>("UpdatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("UpdatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("最后更新操作人"); b.Property<string>("UserName") .IsRequired() .HasMaxLength(32) .HasColumnType("nvarchar(32)") .HasComment("用户名"); b.HasKey("Id"); b.ToTable("UserAuth", t => { t.HasComment("用户"); }); 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, Name = "管理员", Password = "iEYggKrMhQ3ASUGLobra1w==:fn/DsMJUbD9FGpvBvR3moMpMPptdxzZlourPVhU479I=", Sort = 0, UserName = "system" }); }); modelBuilder.Entity("FlexJobApi.Core.UserInfo", b => { b.Property<Guid>("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property<string>("Avatar") .HasColumnType("nvarchar(max)"); b.Property<Guid?>("CityId") .HasColumnType("uniqueidentifier") .HasComment("常驻城市Id"); b.Property<DateTimeOffset>("CreatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("CreatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("创建操作人"); b.Property<Guid?>("EducationalBackgroundId") .HasColumnType("uniqueidentifier") .HasComment("学历Id"); b.Property<Guid?>("EnterpriseId") .HasColumnType("uniqueidentifier") .HasComment("企业Id"); b.Property<int?>("FreeTime") .HasColumnType("int") .HasComment("空闲时间"); b.Property<int?>("Height") .HasColumnType("int") .HasComment("身高"); b.Property<bool>("IsDeleted") .HasColumnType("bit") .HasComment("是否删除"); b.Property<int?>("JobSeekingStatus") .HasColumnType("int") .HasComment("求职状态"); b.Property<int>("Level") .HasColumnType("int") .HasComment("级别"); b.Property<Guid?>("PersonalIdentityId") .HasColumnType("uniqueidentifier") .HasComment("身份Id"); b.Property<Guid?>("ProvinceId") .HasColumnType("uniqueidentifier"); b.Property<string>("Remark") .HasColumnType("nvarchar(max)") .HasComment("备注"); b.Property<int>("Sort") .HasColumnType("int") .HasComment("排序"); b.Property<int>("Status") .HasColumnType("int") .HasComment("状态"); b.Property<string>("TraceId") .HasColumnType("nvarchar(max)") .HasComment("跟踪Id"); b.Property<int>("Type") .HasColumnType("int") .HasComment("用户类型"); b.Property<DateTimeOffset?>("UpdatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("UpdatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("最后更新操作人"); b.Property<Guid>("UserAuthId") .HasColumnType("uniqueidentifier") .HasComment("用户Id"); b.Property<int?>("Weight") .HasColumnType("int") .HasComment("体重"); b.Property<string>("WorkExperience") .HasColumnType("nvarchar(max)") .HasComment("工作经验"); b.Property<string>("WorkSeniority") .HasColumnType("nvarchar(max)") .HasComment("工作资历"); b.Property<string>("WxmpOpenId") .HasMaxLength(32) .HasColumnType("nvarchar(32)") .HasComment("微信开放Id"); b.HasKey("Id"); b.HasIndex("CityId"); b.HasIndex("EducationalBackgroundId"); b.HasIndex("EnterpriseId"); b.HasIndex("PersonalIdentityId"); b.HasIndex("ProvinceId"); b.HasIndex("UserAuthId"); b.ToTable("UserInfo", t => { t.HasComment("用户信息"); }); b.HasData( new { Id = new Guid("11111111-1111-1111-1111-111111111112"), CreatedTime = new DateTimeOffset(new DateTime(2000, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), new TimeSpan(0, 8, 0, 0, 0)), IsDeleted = false, Level = 999, Sort = 0, Status = 0, Type = 100, UserAuthId = new Guid("11111111-1111-1111-1111-111111111111") }); }); modelBuilder.Entity("FlexJobApi.Core.UserInfoBankCard", b => { b.Property<Guid>("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property<string>("Bank") .IsRequired() .HasMaxLength(128) .HasColumnType("nvarchar(128)") .HasComment("开户行"); b.Property<string>("Code") .IsRequired() .HasMaxLength(32) .HasColumnType("nvarchar(32)") .HasComment("银行卡号"); b.Property<DateTimeOffset>("CreatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("CreatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("创建操作人"); b.Property<bool>("IsDeleted") .HasColumnType("bit") .HasComment("是否删除"); b.Property<string>("PhoneNumber") .IsRequired() .HasMaxLength(11) .HasColumnType("nvarchar(11)") .HasComment("银行预留手机号"); b.Property<int>("Sort") .HasColumnType("int") .HasComment("排序"); b.Property<string>("TraceId") .HasColumnType("nvarchar(max)") .HasComment("跟踪Id"); b.Property<DateTimeOffset?>("UpdatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("UpdatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("最后更新操作人"); b.Property<Guid>("UserInfoId") .HasColumnType("uniqueidentifier") .HasComment("用户信息Id"); b.HasKey("Id"); b.HasIndex("UserInfoId"); b.ToTable("UserInfoBankCard", t => { t.HasComment("用户银行卡信息"); }); }); modelBuilder.Entity("FlexJobApi.Core.UserInfoCredential", b => { b.Property<Guid>("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property<string>("BackImg") .HasColumnType("nvarchar(max)") .HasComment("证书反面照片"); b.Property<string>("Code") .IsRequired() .HasMaxLength(128) .HasColumnType("nvarchar(128)") .HasComment("证书编号"); b.Property<DateTimeOffset>("CreatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("CreatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("创建操作人"); b.Property<DateTime>("EndDate") .HasColumnType("datetime2") .HasComment("结束日期"); b.Property<string>("Img") .HasColumnType("nvarchar(max)") .HasComment("证书正面照片"); b.Property<bool>("IsDeleted") .HasColumnType("bit") .HasComment("是否删除"); b.Property<bool>("IsForever") .HasColumnType("bit") .HasComment("永久证书"); b.Property<string>("IssueUnit") .HasColumnType("nvarchar(max)") .HasComment("发证单位"); b.Property<int>("Sort") .HasColumnType("int") .HasComment("排序"); b.Property<DateTime>("StartDate") .HasColumnType("datetime2") .HasComment("开始日期"); b.Property<string>("TraceId") .HasColumnType("nvarchar(max)") .HasComment("跟踪Id"); b.Property<Guid?>("TypeId") .HasColumnType("uniqueidentifier") .HasComment("证书类型Id"); b.Property<DateTimeOffset?>("UpdatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("UpdatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("最后更新操作人"); b.Property<Guid>("UserInfoId") .HasColumnType("uniqueidentifier") .HasComment("用户信息Id"); b.HasKey("Id"); b.HasIndex("TypeId"); b.HasIndex("UserInfoId"); b.ToTable("UserInfoCredential", t => { t.HasComment("用户信息资格证书"); }); }); modelBuilder.Entity("FlexJobApi.Core.UserInfoDepartment", b => { b.Property<Guid>("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property<DateTimeOffset>("CreatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("CreatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("创建操作人"); b.Property<Guid>("DepartmentId") .HasColumnType("uniqueidentifier") .HasComment("部门Id"); b.Property<bool>("IsDeleted") .HasColumnType("bit") .HasComment("是否删除"); b.Property<int>("Sort") .HasColumnType("int") .HasComment("排序"); b.Property<string>("TraceId") .HasColumnType("nvarchar(max)") .HasComment("跟踪Id"); b.Property<DateTimeOffset?>("UpdatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("UpdatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("最后更新操作人"); b.Property<Guid>("UserInfoId") .HasColumnType("uniqueidentifier") .HasComment("用户信息Id"); b.HasKey("Id"); b.HasIndex("DepartmentId"); b.HasIndex("UserInfoId"); b.ToTable("UserInfoDepartment", t => { t.HasComment("用户信息部门"); }); }); modelBuilder.Entity("FlexJobApi.Core.UserInfoExpectJob", b => { b.Property<Guid>("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property<DateTimeOffset>("CreatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("CreatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("创建操作人"); b.Property<bool>("IsDeleted") .HasColumnType("bit") .HasComment("是否删除"); b.Property<Guid>("PersonalIdentityId") .HasColumnType("uniqueidentifier") .HasComment("期望岗位Id"); b.Property<int>("Sort") .HasColumnType("int") .HasComment("排序"); b.Property<string>("TraceId") .HasColumnType("nvarchar(max)") .HasComment("跟踪Id"); b.Property<DateTimeOffset?>("UpdatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("UpdatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("最后更新操作人"); b.Property<Guid>("UserInfoId") .HasColumnType("uniqueidentifier") .HasComment("用户信息Id"); b.HasKey("Id"); b.HasIndex("PersonalIdentityId"); b.HasIndex("UserInfoId"); b.ToTable("UserInfoExpectJob", t => { t.HasComment("用户信息期望岗位"); }); }); modelBuilder.Entity("FlexJobApi.Core.UserInfoPhoto", b => { b.Property<Guid>("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property<DateTimeOffset>("CreatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("CreatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("创建操作人"); b.Property<string>("Img") .HasColumnType("nvarchar(max)") .HasComment("照片"); b.Property<bool>("IsDeleted") .HasColumnType("bit") .HasComment("是否删除"); b.Property<int>("Sort") .HasColumnType("int") .HasComment("排序"); b.Property<string>("TraceId") .HasColumnType("nvarchar(max)") .HasComment("跟踪Id"); b.Property<DateTimeOffset?>("UpdatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("UpdatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("最后更新操作人"); b.Property<Guid>("UserInfoId") .HasColumnType("uniqueidentifier") .HasComment("用户信息Id"); b.HasKey("Id"); b.HasIndex("UserInfoId"); b.ToTable("UserInfoPhoto", t => { t.HasComment("用户信息生活照"); }); }); modelBuilder.Entity("FlexJobApi.Core.UserInfoRole", b => { b.Property<Guid>("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property<DateTimeOffset>("CreatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("CreatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("创建操作人"); b.Property<bool>("IsDeleted") .HasColumnType("bit") .HasComment("是否删除"); b.Property<Guid>("RoleId") .HasColumnType("uniqueidentifier") .HasComment("角色Id"); b.Property<int>("Sort") .HasColumnType("int") .HasComment("排序"); b.Property<string>("TraceId") .HasColumnType("nvarchar(max)") .HasComment("跟踪Id"); b.Property<DateTimeOffset?>("UpdatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("UpdatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("最后更新操作人"); b.Property<Guid>("UserInfoId") .HasColumnType("uniqueidentifier") .HasComment("用户信息Id"); b.HasKey("Id"); b.HasIndex("RoleId"); b.HasIndex("UserInfoId"); b.ToTable("UserInfoRole", t => { t.HasComment("用户信息角色"); }); }); 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("CityId"); b.HasOne("FlexJobApi.Core.EnterpriseAuth", "EnterpriseAuth") .WithMany() .HasForeignKey("EnterpriseAuthId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("FlexJobApi.Core.DictionaryData", "IndustryType") .WithMany() .HasForeignKey("IndustryTypeId"); b.HasOne("FlexJobApi.Core.DictionaryData", "Province") .WithMany() .HasForeignKey("ProvinceId"); b.Navigation("City"); b.Navigation("EnterpriseAuth"); b.Navigation("IndustryType"); b.Navigation("Province"); }); 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("CityId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("FlexJobApi.Core.Enterprise", "Enterprise") .WithMany() .HasForeignKey("EnterpriseId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("City"); b.Navigation("Enterprise"); }); modelBuilder.Entity("FlexJobApi.Core.TaskInfoBenefit", b => { b.HasOne("FlexJobApi.Core.TaskInfo", "TaskInfo") .WithMany("Benefits") .HasForeignKey("BenefitId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.HasOne("FlexJobApi.Core.DictionaryData", "Benefit") .WithMany() .HasForeignKey("BenefitId1") .OnDelete(DeleteBehavior.Cascade) .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("TypeId"); 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.UserInfo", "UserInfo") .WithMany() .HasForeignKey("UserInfoId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("TaskInfo"); b.Navigation("UserInfo"); }); modelBuilder.Entity("FlexJobApi.Core.UserInfo", b => { b.HasOne("FlexJobApi.Core.DictionaryData", "City") .WithMany() .HasForeignKey("CityId"); b.HasOne("FlexJobApi.Core.DictionaryData", "EducationalBackground") .WithMany() .HasForeignKey("EducationalBackgroundId"); b.HasOne("FlexJobApi.Core.Enterprise", "Enterprise") .WithMany("UserInfos") .HasForeignKey("EnterpriseId"); b.HasOne("FlexJobApi.Core.DictionaryData", "PersonalIdentity") .WithMany() .HasForeignKey("PersonalIdentityId"); b.HasOne("FlexJobApi.Core.DictionaryData", "Province") .WithMany() .HasForeignKey("ProvinceId"); b.HasOne("FlexJobApi.Core.UserAuth", "UserAuth") .WithMany("UserInfos") .HasForeignKey("UserAuthId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("City"); b.Navigation("EducationalBackground"); b.Navigation("Enterprise"); b.Navigation("PersonalIdentity"); b.Navigation("Province"); b.Navigation("UserAuth"); }); modelBuilder.Entity("FlexJobApi.Core.UserInfoBankCard", b => { b.HasOne("FlexJobApi.Core.UserInfo", "UserInfo") .WithMany() .HasForeignKey("UserInfoId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("UserInfo"); }); modelBuilder.Entity("FlexJobApi.Core.UserInfoCredential", b => { b.HasOne("FlexJobApi.Core.DictionaryData", "Type") .WithMany() .HasForeignKey("TypeId"); b.HasOne("FlexJobApi.Core.UserInfo", "UserInfo") .WithMany("UserInfoCredentials") .HasForeignKey("UserInfoId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Type"); b.Navigation("UserInfo"); }); modelBuilder.Entity("FlexJobApi.Core.UserInfoDepartment", b => { b.HasOne("FlexJobApi.Core.Department", "Department") .WithMany() .HasForeignKey("DepartmentId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("FlexJobApi.Core.UserInfo", "UserInfo") .WithMany("UserInfoDepartments") .HasForeignKey("UserInfoId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Department"); b.Navigation("UserInfo"); }); modelBuilder.Entity("FlexJobApi.Core.UserInfoExpectJob", b => { b.HasOne("FlexJobApi.Core.DictionaryData", "PersonalIdentity") .WithMany() .HasForeignKey("PersonalIdentityId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("FlexJobApi.Core.UserInfo", "UserInfo") .WithMany("UserInfoExpectJobs") .HasForeignKey("UserInfoId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("PersonalIdentity"); b.Navigation("UserInfo"); }); modelBuilder.Entity("FlexJobApi.Core.UserInfoPhoto", b => { b.HasOne("FlexJobApi.Core.UserInfo", "UserInfo") .WithMany() .HasForeignKey("UserInfoId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("UserInfo"); }); modelBuilder.Entity("FlexJobApi.Core.UserInfoRole", b => { b.HasOne("FlexJobApi.Core.Role", "Role") .WithMany("UserInfoRoles") .HasForeignKey("RoleId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("FlexJobApi.Core.UserInfo", "UserInfo") .WithMany("UserInfoRoles") .HasForeignKey("UserInfoId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Role"); b.Navigation("UserInfo"); }); 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("UserInfos"); }); modelBuilder.Entity("FlexJobApi.Core.Menu", b => { b.Navigation("Children"); }); modelBuilder.Entity("FlexJobApi.Core.Role", b => { b.Navigation("RoleMenus"); b.Navigation("RoleResources"); b.Navigation("UserInfoRoles"); }); modelBuilder.Entity("FlexJobApi.Core.TaskInfo", b => { b.Navigation("Benefits"); b.Navigation("CredentialLimits"); }); modelBuilder.Entity("FlexJobApi.Core.UserAuth", b => { b.Navigation("UserInfos"); }); modelBuilder.Entity("FlexJobApi.Core.UserInfo", b => { b.Navigation("UserInfoCredentials"); b.Navigation("UserInfoDepartments"); b.Navigation("UserInfoExpectJobs"); b.Navigation("UserInfoRoles"); }); #pragma warning restore 612, 618 } } } FlexJobApi.Database.Migrations/Migrations/20250806082829_UpdateEnterprise.cs
New file @@ -0,0 +1,965 @@ using System; using Microsoft.EntityFrameworkCore.Migrations; #nullable disable namespace FlexJobApi.Database.Migrations.Migrations { /// <inheritdoc /> public partial class UpdateEnterprise : Migration { /// <inheritdoc /> protected override void Up(MigrationBuilder migrationBuilder) { migrationBuilder.DropForeignKey( name: "FK_Enterprise_FileVirtualPath_IdentityBackImgId", table: "Enterprise"); migrationBuilder.DropForeignKey( name: "FK_Enterprise_FileVirtualPath_IdentityImgId", table: "Enterprise"); migrationBuilder.DropForeignKey( name: "FK_Enterprise_FileVirtualPath_LicenseImageId", table: "Enterprise"); migrationBuilder.DropForeignKey( name: "FK_UserAuth_FileVirtualPath_AvatarId", table: "UserAuth"); migrationBuilder.DropForeignKey( name: "FK_UserAuth_FileVirtualPath_BankCardImgId", table: "UserAuth"); migrationBuilder.DropForeignKey( name: "FK_UserAuth_FileVirtualPath_IdentityBackImgId", table: "UserAuth"); migrationBuilder.DropForeignKey( name: "FK_UserAuth_FileVirtualPath_IdentityImgId", table: "UserAuth"); migrationBuilder.DropForeignKey( name: "FK_UserInfoCredential_FileVirtualPath_BackImgId", table: "UserInfoCredential"); migrationBuilder.DropForeignKey( name: "FK_UserInfoCredential_FileVirtualPath_ImgId", table: "UserInfoCredential"); migrationBuilder.DropForeignKey( name: "FK_UserInfoPhoto_FileVirtualPath_ImgId", table: "UserInfoPhoto"); migrationBuilder.DropTable( name: "FileVirtualPath"); migrationBuilder.DropTable( name: "FileStore"); migrationBuilder.DropIndex( name: "IX_UserInfoPhoto_ImgId", table: "UserInfoPhoto"); migrationBuilder.DropIndex( name: "IX_UserInfoCredential_BackImgId", table: "UserInfoCredential"); migrationBuilder.DropIndex( name: "IX_UserInfoCredential_ImgId", table: "UserInfoCredential"); migrationBuilder.DropIndex( name: "IX_UserAuth_AvatarId", table: "UserAuth"); migrationBuilder.DropIndex( name: "IX_UserAuth_BankCardImgId", table: "UserAuth"); migrationBuilder.DropIndex( name: "IX_UserAuth_IdentityBackImgId", table: "UserAuth"); migrationBuilder.DropIndex( name: "IX_UserAuth_IdentityImgId", table: "UserAuth"); migrationBuilder.DropIndex( name: "IX_Enterprise_IdentityBackImgId", table: "Enterprise"); migrationBuilder.DropIndex( name: "IX_Enterprise_IdentityImgId", table: "Enterprise"); migrationBuilder.DropIndex( name: "IX_Enterprise_LicenseImageId", table: "Enterprise"); migrationBuilder.DropColumn( name: "ImgId", table: "UserInfoPhoto"); migrationBuilder.DropColumn( name: "BackImgId", table: "UserInfoCredential"); migrationBuilder.DropColumn( name: "ImgId", table: "UserInfoCredential"); migrationBuilder.DropColumn( name: "AvatarId", table: "UserAuth"); migrationBuilder.DropColumn( name: "BankCardImgId", table: "UserAuth"); migrationBuilder.DropColumn( name: "IdentityBackImgId", table: "UserAuth"); migrationBuilder.DropColumn( name: "IdentityImgId", table: "UserAuth"); migrationBuilder.DropColumn( name: "BankCardImgId", table: "Enterprise"); migrationBuilder.DropColumn( name: "ContactNumber", table: "Enterprise"); migrationBuilder.DropColumn( name: "EnterpriseName", table: "Enterprise"); migrationBuilder.DropColumn( name: "EnterpriseRealMethod", table: "Enterprise"); migrationBuilder.DropColumn( name: "Identity", table: "Enterprise"); migrationBuilder.DropColumn( name: "IdentityBackImgId", table: "Enterprise"); migrationBuilder.DropColumn( name: "IdentityImgId", table: "Enterprise"); migrationBuilder.DropColumn( name: "IsReal", table: "Enterprise"); migrationBuilder.DropColumn( name: "LegalPerson", table: "Enterprise"); migrationBuilder.DropColumn( name: "LicenseImageId", table: "Enterprise"); migrationBuilder.DropColumn( name: "Name", table: "Enterprise"); migrationBuilder.DropColumn( name: "PersonalRealMethod", table: "Enterprise"); migrationBuilder.DropColumn( name: "PhoneNumber", table: "Enterprise"); migrationBuilder.DropColumn( name: "Proxy", table: "Enterprise"); migrationBuilder.DropColumn( name: "ProxyPowerAttorneyUrl", table: "Enterprise"); migrationBuilder.DropColumn( name: "SocietyCreditCode", table: "Enterprise"); migrationBuilder.AddColumn<string>( name: "Img", table: "UserInfoPhoto", type: "nvarchar(max)", nullable: true, comment: "照片"); migrationBuilder.AddColumn<string>( name: "BackImg", table: "UserInfoCredential", type: "nvarchar(max)", nullable: true, comment: "证书反面照片"); migrationBuilder.AddColumn<string>( name: "Img", table: "UserInfoCredential", type: "nvarchar(max)", nullable: true, comment: "证书正面照片"); migrationBuilder.AddColumn<string>( name: "Avatar", table: "UserInfo", type: "nvarchar(max)", nullable: true); migrationBuilder.AddColumn<Guid>( name: "ProvinceId", table: "UserInfo", type: "uniqueidentifier", nullable: true); migrationBuilder.AddColumn<string>( name: "BankCardImg", table: "UserAuth", type: "nvarchar(max)", nullable: true, comment: "银行卡照片"); migrationBuilder.AddColumn<string>( name: "IdentityBackImg", table: "UserAuth", type: "nvarchar(max)", nullable: true, comment: "身份证国徽面"); migrationBuilder.AddColumn<string>( name: "IdentityImg", table: "UserAuth", type: "nvarchar(max)", nullable: true, comment: "身份证人像面"); migrationBuilder.AddColumn<string>( name: "BankBranchName", table: "Enterprise", type: "nvarchar(max)", nullable: true); migrationBuilder.AddColumn<string>( name: "BankName", table: "Enterprise", type: "nvarchar(max)", nullable: true); migrationBuilder.AddColumn<Guid>( name: "CityId", table: "Enterprise", type: "uniqueidentifier", nullable: true); migrationBuilder.AddColumn<string>( name: "ContactEmail", table: "Enterprise", type: "nvarchar(max)", nullable: true); migrationBuilder.AddColumn<string>( name: "ContactPhoneNumber", table: "Enterprise", type: "nvarchar(11)", maxLength: 11, nullable: true); migrationBuilder.AddColumn<Guid>( name: "EnterpriseAuthId", table: "Enterprise", type: "uniqueidentifier", nullable: false, defaultValue: new Guid("00000000-0000-0000-0000-000000000000")); migrationBuilder.AddColumn<Guid>( name: "IndustryTypeId", table: "Enterprise", type: "uniqueidentifier", nullable: true); migrationBuilder.AddColumn<bool>( name: "IsCheckedBankCard", table: "Enterprise", type: "bit", nullable: false, defaultValue: false); migrationBuilder.AddColumn<string>( name: "MainBusiness", table: "Enterprise", type: "nvarchar(max)", nullable: true); migrationBuilder.AddColumn<decimal>( name: "MergeSignCost", table: "Enterprise", type: "decimal(18,2)", nullable: true); migrationBuilder.AddColumn<int>( name: "PayAccess", table: "Enterprise", type: "int", nullable: true); migrationBuilder.AddColumn<Guid>( name: "ProvinceId", table: "Enterprise", type: "uniqueidentifier", nullable: true); migrationBuilder.AddColumn<decimal>( name: "RealVerifyCost", table: "Enterprise", type: "decimal(18,2)", nullable: true); migrationBuilder.AddColumn<decimal>( name: "SignCost", table: "Enterprise", type: "decimal(18,2)", nullable: true); migrationBuilder.AddColumn<int>( name: "SmsAccess", table: "Enterprise", type: "int", nullable: true); migrationBuilder.AddColumn<decimal>( name: "SmsCost", table: "Enterprise", type: "decimal(18,2)", nullable: false, defaultValue: 0m); migrationBuilder.CreateTable( name: "EnterpriseAuth", columns: table => new { Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false), EnterpriseRealMethod = table.Column<int>(type: "int", nullable: true), EnterpriseName = table.Column<string>(type: "nvarchar(128)", maxLength: 128, nullable: false), SocietyCreditCode = table.Column<string>(type: "nvarchar(18)", maxLength: 18, nullable: false), LicenseImage = table.Column<string>(type: "nvarchar(max)", nullable: true), LegalPerson = table.Column<string>(type: "nvarchar(32)", maxLength: 32, nullable: true), LegalIdentity = table.Column<string>(type: "nvarchar(18)", maxLength: 18, nullable: true), PersonalRealMethod = table.Column<int>(type: "int", nullable: true), Name = table.Column<string>(type: "nvarchar(32)", maxLength: 32, nullable: true), Identity = table.Column<string>(type: "nvarchar(18)", maxLength: 18, nullable: true), IdentityImg = table.Column<string>(type: "nvarchar(max)", nullable: true), IdentityBackImg = table.Column<string>(type: "nvarchar(max)", nullable: true), BankCard = table.Column<string>(type: "nvarchar(32)", maxLength: 32, nullable: true), BankCardImg = table.Column<string>(type: "nvarchar(max)", nullable: true), PhoneNumber = table.Column<string>(type: "nvarchar(11)", maxLength: 11, nullable: true), Proxy = table.Column<bool>(type: "bit", nullable: true), ProxyPowerAttorneyUrl = table.Column<string>(type: "nvarchar(max)", nullable: true), IsReal = table.Column<bool>(type: "bit", nullable: false), CreatedTime = table.Column<DateTimeOffset>(type: "datetimeoffset", nullable: false), UpdatedTime = table.Column<DateTimeOffset>(type: "datetimeoffset", nullable: true), Sort = table.Column<int>(type: "int", nullable: false, comment: "排序"), TraceId = table.Column<string>(type: "nvarchar(max)", nullable: true, comment: "跟踪Id"), CreatedUserInfoId = table.Column<Guid>(type: "uniqueidentifier", nullable: true, comment: "创建操作人"), UpdatedUserInfoId = table.Column<Guid>(type: "uniqueidentifier", nullable: true, comment: "最后更新操作人"), IsDeleted = table.Column<bool>(type: "bit", nullable: false, comment: "是否删除") }, constraints: table => { table.PrimaryKey("PK_EnterpriseAuth", x => x.Id); }); migrationBuilder.UpdateData( table: "UserAuth", keyColumn: "Id", keyValue: new Guid("11111111-1111-1111-1111-111111111111"), columns: new[] { "BankCardImg", "IdentityBackImg", "IdentityImg" }, values: new object[] { null, null, null }); migrationBuilder.UpdateData( table: "UserInfo", keyColumn: "Id", keyValue: new Guid("11111111-1111-1111-1111-111111111112"), columns: new[] { "Avatar", "ProvinceId" }, values: new object[] { null, null }); migrationBuilder.CreateIndex( name: "IX_UserInfo_ProvinceId", table: "UserInfo", column: "ProvinceId"); migrationBuilder.CreateIndex( name: "IX_Enterprise_CityId", table: "Enterprise", column: "CityId"); migrationBuilder.CreateIndex( name: "IX_Enterprise_EnterpriseAuthId", table: "Enterprise", column: "EnterpriseAuthId"); migrationBuilder.CreateIndex( name: "IX_Enterprise_IndustryTypeId", table: "Enterprise", column: "IndustryTypeId"); migrationBuilder.CreateIndex( name: "IX_Enterprise_ProvinceId", table: "Enterprise", column: "ProvinceId"); migrationBuilder.AddForeignKey( name: "FK_Enterprise_DictionaryData_CityId", table: "Enterprise", column: "CityId", principalTable: "DictionaryData", principalColumn: "Id"); migrationBuilder.AddForeignKey( name: "FK_Enterprise_DictionaryData_IndustryTypeId", table: "Enterprise", column: "IndustryTypeId", principalTable: "DictionaryData", principalColumn: "Id"); migrationBuilder.AddForeignKey( name: "FK_Enterprise_DictionaryData_ProvinceId", table: "Enterprise", column: "ProvinceId", principalTable: "DictionaryData", principalColumn: "Id"); migrationBuilder.AddForeignKey( name: "FK_Enterprise_EnterpriseAuth_EnterpriseAuthId", table: "Enterprise", column: "EnterpriseAuthId", principalTable: "EnterpriseAuth", principalColumn: "Id", onDelete: ReferentialAction.Cascade); migrationBuilder.AddForeignKey( name: "FK_UserInfo_DictionaryData_ProvinceId", table: "UserInfo", column: "ProvinceId", principalTable: "DictionaryData", principalColumn: "Id"); } /// <inheritdoc /> protected override void Down(MigrationBuilder migrationBuilder) { migrationBuilder.DropForeignKey( name: "FK_Enterprise_DictionaryData_CityId", table: "Enterprise"); migrationBuilder.DropForeignKey( name: "FK_Enterprise_DictionaryData_IndustryTypeId", table: "Enterprise"); migrationBuilder.DropForeignKey( name: "FK_Enterprise_DictionaryData_ProvinceId", table: "Enterprise"); migrationBuilder.DropForeignKey( name: "FK_Enterprise_EnterpriseAuth_EnterpriseAuthId", table: "Enterprise"); migrationBuilder.DropForeignKey( name: "FK_UserInfo_DictionaryData_ProvinceId", table: "UserInfo"); migrationBuilder.DropTable( name: "EnterpriseAuth"); migrationBuilder.DropIndex( name: "IX_UserInfo_ProvinceId", table: "UserInfo"); migrationBuilder.DropIndex( name: "IX_Enterprise_CityId", table: "Enterprise"); migrationBuilder.DropIndex( name: "IX_Enterprise_EnterpriseAuthId", table: "Enterprise"); migrationBuilder.DropIndex( name: "IX_Enterprise_IndustryTypeId", table: "Enterprise"); migrationBuilder.DropIndex( name: "IX_Enterprise_ProvinceId", table: "Enterprise"); migrationBuilder.DropColumn( name: "Img", table: "UserInfoPhoto"); migrationBuilder.DropColumn( name: "BackImg", table: "UserInfoCredential"); migrationBuilder.DropColumn( name: "Img", table: "UserInfoCredential"); migrationBuilder.DropColumn( name: "Avatar", table: "UserInfo"); migrationBuilder.DropColumn( name: "ProvinceId", table: "UserInfo"); migrationBuilder.DropColumn( name: "BankCardImg", table: "UserAuth"); migrationBuilder.DropColumn( name: "IdentityBackImg", table: "UserAuth"); migrationBuilder.DropColumn( name: "IdentityImg", table: "UserAuth"); migrationBuilder.DropColumn( name: "BankBranchName", table: "Enterprise"); migrationBuilder.DropColumn( name: "BankName", table: "Enterprise"); migrationBuilder.DropColumn( name: "CityId", table: "Enterprise"); migrationBuilder.DropColumn( name: "ContactEmail", table: "Enterprise"); migrationBuilder.DropColumn( name: "ContactPhoneNumber", table: "Enterprise"); migrationBuilder.DropColumn( name: "EnterpriseAuthId", table: "Enterprise"); migrationBuilder.DropColumn( name: "IndustryTypeId", table: "Enterprise"); migrationBuilder.DropColumn( name: "IsCheckedBankCard", table: "Enterprise"); migrationBuilder.DropColumn( name: "MainBusiness", table: "Enterprise"); migrationBuilder.DropColumn( name: "MergeSignCost", table: "Enterprise"); migrationBuilder.DropColumn( name: "PayAccess", table: "Enterprise"); migrationBuilder.DropColumn( name: "ProvinceId", table: "Enterprise"); migrationBuilder.DropColumn( name: "RealVerifyCost", table: "Enterprise"); migrationBuilder.DropColumn( name: "SignCost", table: "Enterprise"); migrationBuilder.DropColumn( name: "SmsAccess", table: "Enterprise"); migrationBuilder.DropColumn( name: "SmsCost", table: "Enterprise"); migrationBuilder.AddColumn<Guid>( name: "ImgId", table: "UserInfoPhoto", type: "uniqueidentifier", nullable: false, defaultValue: new Guid("00000000-0000-0000-0000-000000000000"), comment: "照片Id"); migrationBuilder.AddColumn<Guid>( name: "BackImgId", table: "UserInfoCredential", type: "uniqueidentifier", nullable: true, comment: "证书反面照片Id"); migrationBuilder.AddColumn<Guid>( name: "ImgId", table: "UserInfoCredential", type: "uniqueidentifier", nullable: false, defaultValue: new Guid("00000000-0000-0000-0000-000000000000"), comment: "证书正面照片Id"); migrationBuilder.AddColumn<Guid>( name: "AvatarId", table: "UserAuth", type: "uniqueidentifier", nullable: true, comment: "头像Id"); migrationBuilder.AddColumn<Guid>( name: "BankCardImgId", table: "UserAuth", type: "uniqueidentifier", nullable: true, comment: "银行卡照片Id"); migrationBuilder.AddColumn<Guid>( name: "IdentityBackImgId", table: "UserAuth", type: "uniqueidentifier", nullable: true, comment: "身份证国徽面Id"); migrationBuilder.AddColumn<Guid>( name: "IdentityImgId", table: "UserAuth", type: "uniqueidentifier", nullable: true, comment: "身份证人像面Id"); migrationBuilder.AddColumn<Guid>( name: "BankCardImgId", table: "Enterprise", type: "uniqueidentifier", nullable: true, comment: "法人或经办人银行卡照片Id"); migrationBuilder.AddColumn<string>( name: "ContactNumber", table: "Enterprise", type: "nvarchar(11)", maxLength: 11, nullable: true, comment: "联系电话"); migrationBuilder.AddColumn<string>( name: "EnterpriseName", table: "Enterprise", type: "nvarchar(128)", maxLength: 128, nullable: false, defaultValue: "", comment: "企业全称"); migrationBuilder.AddColumn<int>( name: "EnterpriseRealMethod", table: "Enterprise", type: "int", nullable: true, comment: "企业认证方式"); migrationBuilder.AddColumn<string>( name: "Identity", table: "Enterprise", type: "nvarchar(18)", maxLength: 18, nullable: true, comment: "法人或经办人身份证号"); migrationBuilder.AddColumn<Guid>( name: "IdentityBackImgId", table: "Enterprise", type: "uniqueidentifier", nullable: true, comment: "法人或经办人身份证国徽面Id"); migrationBuilder.AddColumn<Guid>( name: "IdentityImgId", table: "Enterprise", type: "uniqueidentifier", nullable: true, comment: "法人或经办人身份证人像面Id"); migrationBuilder.AddColumn<bool>( name: "IsReal", table: "Enterprise", type: "bit", nullable: false, defaultValue: false, comment: "是否实名"); migrationBuilder.AddColumn<string>( name: "LegalPerson", table: "Enterprise", type: "nvarchar(32)", maxLength: 32, nullable: true, comment: "法人姓名"); migrationBuilder.AddColumn<Guid>( name: "LicenseImageId", table: "Enterprise", type: "uniqueidentifier", nullable: true, comment: "营业执照照片Id"); migrationBuilder.AddColumn<string>( name: "Name", table: "Enterprise", type: "nvarchar(32)", maxLength: 32, nullable: true, comment: "法人或经办人姓名"); migrationBuilder.AddColumn<int>( name: "PersonalRealMethod", table: "Enterprise", type: "int", nullable: true, comment: "法人或经办人实名方式"); migrationBuilder.AddColumn<string>( name: "PhoneNumber", table: "Enterprise", type: "nvarchar(11)", maxLength: 11, nullable: true, comment: "法人或经办人手机号"); migrationBuilder.AddColumn<bool>( name: "Proxy", table: "Enterprise", type: "bit", nullable: true, comment: "是否委托经办人"); migrationBuilder.AddColumn<string>( name: "ProxyPowerAttorneyUrl", table: "Enterprise", type: "nvarchar(max)", nullable: true, comment: "企业授权书"); migrationBuilder.AddColumn<string>( name: "SocietyCreditCode", table: "Enterprise", type: "nvarchar(18)", maxLength: 18, nullable: false, defaultValue: "", comment: "统一社会信用代码"); migrationBuilder.CreateTable( name: "FileStore", columns: table => new { Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false), AbsolutePath = table.Column<string>(type: "nvarchar(max)", nullable: false, comment: "绝对路径"), Access = table.Column<int>(type: "int", nullable: false, comment: "通道"), ContentType = table.Column<string>(type: "nvarchar(128)", maxLength: 128, nullable: false, comment: "内容类型"), CreatedTime = table.Column<DateTimeOffset>(type: "datetimeoffset", nullable: false), CreatedUserInfoId = table.Column<Guid>(type: "uniqueidentifier", nullable: true, comment: "创建操作人"), Extension = table.Column<string>(type: "nvarchar(32)", maxLength: 32, nullable: false, comment: "扩展名"), FileType = table.Column<int>(type: "int", nullable: false, comment: "文件类型"), Hash = table.Column<string>(type: "nvarchar(max)", nullable: false, comment: "哈希"), ImageHeight = table.Column<int>(type: "int", nullable: true, comment: "高度(像素)"), ImageWidth = table.Column<int>(type: "int", nullable: true, comment: "宽度(像素)"), IsDeleted = table.Column<bool>(type: "bit", nullable: false, comment: "是否删除"), Length = table.Column<long>(type: "bigint", nullable: false, comment: "文件大小(字节)"), Name = table.Column<string>(type: "nvarchar(max)", nullable: false, comment: "名称"), RelativePath = table.Column<string>(type: "nvarchar(max)", nullable: true, comment: "相对路径"), Sort = table.Column<int>(type: "int", nullable: false, comment: "排序"), TraceId = table.Column<string>(type: "nvarchar(max)", nullable: true, comment: "跟踪Id"), UpdatedTime = table.Column<DateTimeOffset>(type: "datetimeoffset", nullable: true), UpdatedUserInfoId = table.Column<Guid>(type: "uniqueidentifier", nullable: true, comment: "最后更新操作人") }, constraints: table => { table.PrimaryKey("PK_FileStore", x => x.Id); }, comment: "文件存储"); migrationBuilder.CreateTable( name: "FileVirtualPath", columns: table => new { Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false), StoreId = table.Column<Guid>(type: "uniqueidentifier", nullable: false, comment: "文件存储Id"), CreatedTime = table.Column<DateTimeOffset>(type: "datetimeoffset", nullable: false), CreatedUserInfoId = table.Column<Guid>(type: "uniqueidentifier", nullable: true, comment: "创建操作人"), IsDeleted = table.Column<bool>(type: "bit", nullable: false, comment: "是否删除"), Name = table.Column<string>(type: "nvarchar(max)", nullable: false, comment: "名称"), Sort = table.Column<int>(type: "int", nullable: false, comment: "排序"), TraceId = table.Column<string>(type: "nvarchar(max)", nullable: true, comment: "跟踪Id"), UpdatedTime = table.Column<DateTimeOffset>(type: "datetimeoffset", nullable: true), UpdatedUserInfoId = table.Column<Guid>(type: "uniqueidentifier", nullable: true, comment: "最后更新操作人"), VirtualPath = table.Column<string>(type: "nvarchar(max)", nullable: false, comment: "虚拟路径") }, constraints: table => { table.PrimaryKey("PK_FileVirtualPath", x => x.Id); table.ForeignKey( name: "FK_FileVirtualPath_FileStore_StoreId", column: x => x.StoreId, principalTable: "FileStore", principalColumn: "Id", onDelete: ReferentialAction.Cascade); }, comment: "文件虚拟路径"); migrationBuilder.UpdateData( table: "UserAuth", keyColumn: "Id", keyValue: new Guid("11111111-1111-1111-1111-111111111111"), columns: new[] { "AvatarId", "BankCardImgId", "IdentityBackImgId", "IdentityImgId" }, values: new object[] { null, null, null, null }); migrationBuilder.CreateIndex( name: "IX_UserInfoPhoto_ImgId", table: "UserInfoPhoto", column: "ImgId"); migrationBuilder.CreateIndex( name: "IX_UserInfoCredential_BackImgId", table: "UserInfoCredential", column: "BackImgId"); migrationBuilder.CreateIndex( name: "IX_UserInfoCredential_ImgId", table: "UserInfoCredential", column: "ImgId"); migrationBuilder.CreateIndex( name: "IX_UserAuth_AvatarId", table: "UserAuth", column: "AvatarId"); migrationBuilder.CreateIndex( name: "IX_UserAuth_BankCardImgId", table: "UserAuth", column: "BankCardImgId"); migrationBuilder.CreateIndex( name: "IX_UserAuth_IdentityBackImgId", table: "UserAuth", column: "IdentityBackImgId"); migrationBuilder.CreateIndex( name: "IX_UserAuth_IdentityImgId", table: "UserAuth", column: "IdentityImgId"); migrationBuilder.CreateIndex( name: "IX_Enterprise_IdentityBackImgId", table: "Enterprise", column: "IdentityBackImgId"); migrationBuilder.CreateIndex( name: "IX_Enterprise_IdentityImgId", table: "Enterprise", column: "IdentityImgId"); migrationBuilder.CreateIndex( name: "IX_Enterprise_LicenseImageId", table: "Enterprise", column: "LicenseImageId"); migrationBuilder.CreateIndex( name: "IX_FileVirtualPath_StoreId", table: "FileVirtualPath", column: "StoreId"); migrationBuilder.AddForeignKey( name: "FK_Enterprise_FileVirtualPath_IdentityBackImgId", table: "Enterprise", column: "IdentityBackImgId", principalTable: "FileVirtualPath", principalColumn: "Id"); migrationBuilder.AddForeignKey( name: "FK_Enterprise_FileVirtualPath_IdentityImgId", table: "Enterprise", column: "IdentityImgId", principalTable: "FileVirtualPath", principalColumn: "Id"); migrationBuilder.AddForeignKey( name: "FK_Enterprise_FileVirtualPath_LicenseImageId", table: "Enterprise", column: "LicenseImageId", principalTable: "FileVirtualPath", principalColumn: "Id"); migrationBuilder.AddForeignKey( name: "FK_UserAuth_FileVirtualPath_AvatarId", table: "UserAuth", column: "AvatarId", principalTable: "FileVirtualPath", principalColumn: "Id"); migrationBuilder.AddForeignKey( name: "FK_UserAuth_FileVirtualPath_BankCardImgId", table: "UserAuth", column: "BankCardImgId", principalTable: "FileVirtualPath", principalColumn: "Id"); migrationBuilder.AddForeignKey( name: "FK_UserAuth_FileVirtualPath_IdentityBackImgId", table: "UserAuth", column: "IdentityBackImgId", principalTable: "FileVirtualPath", principalColumn: "Id"); migrationBuilder.AddForeignKey( name: "FK_UserAuth_FileVirtualPath_IdentityImgId", table: "UserAuth", column: "IdentityImgId", principalTable: "FileVirtualPath", principalColumn: "Id"); migrationBuilder.AddForeignKey( name: "FK_UserInfoCredential_FileVirtualPath_BackImgId", table: "UserInfoCredential", column: "BackImgId", principalTable: "FileVirtualPath", principalColumn: "Id"); migrationBuilder.AddForeignKey( name: "FK_UserInfoCredential_FileVirtualPath_ImgId", table: "UserInfoCredential", column: "ImgId", principalTable: "FileVirtualPath", principalColumn: "Id", onDelete: ReferentialAction.Cascade); migrationBuilder.AddForeignKey( name: "FK_UserInfoPhoto_FileVirtualPath_ImgId", table: "UserInfoPhoto", column: "ImgId", principalTable: "FileVirtualPath", principalColumn: "Id", onDelete: ReferentialAction.Cascade); } } } FlexJobApi.Database.Migrations/Migrations/DefaultDbContextModelSnapshot.cs
@@ -247,19 +247,26 @@ .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property<string>("BankBranchName") .HasColumnType("nvarchar(max)"); b.Property<string>("BankCard") .HasMaxLength(32) .HasColumnType("nvarchar(32)") .HasComment("法人或经办人银行卡号"); b.Property<Guid?>("BankCardImgId") .HasColumnType("uniqueidentifier") .HasComment("法人或经办人银行卡照片Id"); b.Property<string>("BankName") .HasColumnType("nvarchar(max)"); b.Property<string>("ContactNumber") b.Property<Guid?>("CityId") .HasColumnType("uniqueidentifier"); b.Property<string>("ContactEmail") .HasColumnType("nvarchar(max)"); b.Property<string>("ContactPhoneNumber") .HasMaxLength(11) .HasColumnType("nvarchar(11)") .HasComment("联系电话"); .HasColumnType("nvarchar(11)"); b.Property<string>("Contacts") .HasMaxLength(32) @@ -273,77 +280,46 @@ .HasColumnType("uniqueidentifier") .HasComment("创建操作人"); b.Property<string>("EnterpriseName") .IsRequired() .HasMaxLength(128) .HasColumnType("nvarchar(128)") .HasComment("企业全称"); b.Property<Guid>("EnterpriseAuthId") .HasColumnType("uniqueidentifier"); b.Property<int?>("EnterpriseRealMethod") .HasColumnType("int") .HasComment("企业认证方式"); b.Property<Guid?>("IndustryTypeId") .HasColumnType("uniqueidentifier"); b.Property<string>("Identity") .HasMaxLength(18) .HasColumnType("nvarchar(18)") .HasComment("法人或经办人身份证号"); b.Property<Guid?>("IdentityBackImgId") .HasColumnType("uniqueidentifier") .HasComment("法人或经办人身份证国徽面Id"); b.Property<Guid?>("IdentityImgId") .HasColumnType("uniqueidentifier") .HasComment("法人或经办人身份证人像面Id"); b.Property<bool>("IsCheckedBankCard") .HasColumnType("bit"); b.Property<bool>("IsDeleted") .HasColumnType("bit") .HasComment("是否删除"); b.Property<bool>("IsReal") .HasColumnType("bit") .HasComment("是否实名"); b.Property<string>("MainBusiness") .HasColumnType("nvarchar(max)"); b.Property<string>("LegalPerson") .HasMaxLength(32) .HasColumnType("nvarchar(32)") .HasComment("法人姓名"); b.Property<decimal?>("MergeSignCost") .HasColumnType("decimal(18,2)"); b.Property<Guid?>("LicenseImageId") .HasColumnType("uniqueidentifier") .HasComment("营业执照照片Id"); b.Property<int?>("PayAccess") .HasColumnType("int"); b.Property<string>("Name") .HasMaxLength(32) .HasColumnType("nvarchar(32)") .HasComment("法人或经办人姓名"); b.Property<int?>("PersonalRealMethod") .HasColumnType("int") .HasComment("法人或经办人实名方式"); b.Property<string>("PhoneNumber") .HasMaxLength(11) .HasColumnType("nvarchar(11)") .HasComment("法人或经办人手机号"); b.Property<bool?>("Proxy") .HasColumnType("bit") .HasComment("是否委托经办人"); b.Property<string>("ProxyPowerAttorneyUrl") .HasColumnType("nvarchar(max)") .HasComment("企业授权书"); b.Property<Guid?>("ProvinceId") .HasColumnType("uniqueidentifier"); b.Property<int?>("RealAccess") .HasColumnType("int") .HasComment("实名通道"); b.Property<string>("SocietyCreditCode") .IsRequired() .HasMaxLength(18) .HasColumnType("nvarchar(18)") .HasComment("统一社会信用代码"); 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<int>("Sort") .HasColumnType("int") @@ -362,11 +338,13 @@ b.HasKey("Id"); b.HasIndex("IdentityBackImgId"); b.HasIndex("CityId"); b.HasIndex("IdentityImgId"); b.HasIndex("EnterpriseAuthId"); b.HasIndex("LicenseImageId"); b.HasIndex("IndustryTypeId"); b.HasIndex("ProvinceId"); b.ToTable("Enterprise", t => { @@ -374,73 +352,83 @@ }); }); modelBuilder.Entity("FlexJobApi.Core.FileStore", b => modelBuilder.Entity("FlexJobApi.Core.EnterpriseAuth", b => { b.Property<Guid>("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property<string>("AbsolutePath") .IsRequired() .HasColumnType("nvarchar(max)") .HasComment("绝对路径"); b.Property<string>("BankCard") .HasMaxLength(32) .HasColumnType("nvarchar(32)"); b.Property<int>("Access") .HasColumnType("int") .HasComment("通道"); b.Property<string>("BankCardImg") .HasColumnType("nvarchar(max)"); b.Property<string>("ContentType") b.Property<DateTimeOffset>("CreatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("CreatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("创建操作人"); b.Property<string>("EnterpriseName") .IsRequired() .HasMaxLength(128) .HasColumnType("nvarchar(128)") .HasComment("内容类型"); .HasColumnType("nvarchar(128)"); b.Property<DateTimeOffset>("CreatedTime") .HasColumnType("datetimeoffset"); b.Property<int?>("EnterpriseRealMethod") .HasColumnType("int"); b.Property<Guid?>("CreatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("创建操作人"); b.Property<string>("Identity") .HasMaxLength(18) .HasColumnType("nvarchar(18)"); b.Property<string>("Extension") .IsRequired() b.Property<string>("IdentityBackImg") .HasColumnType("nvarchar(max)"); b.Property<string>("IdentityImg") .HasColumnType("nvarchar(max)"); b.Property<bool>("IsDeleted") .HasColumnType("bit") .HasComment("是否删除"); b.Property<bool>("IsReal") .HasColumnType("bit"); b.Property<string>("LegalIdentity") .HasMaxLength(18) .HasColumnType("nvarchar(18)"); b.Property<string>("LegalPerson") .HasMaxLength(32) .HasColumnType("nvarchar(32)") .HasComment("扩展名"); .HasColumnType("nvarchar(32)"); b.Property<int>("FileType") .HasColumnType("int") .HasComment("文件类型"); b.Property<string>("Hash") .IsRequired() .HasColumnType("nvarchar(max)") .HasComment("哈希"); b.Property<int?>("ImageHeight") .HasColumnType("int") .HasComment("高度(像素)"); b.Property<int?>("ImageWidth") .HasColumnType("int") .HasComment("宽度(像素)"); b.Property<bool>("IsDeleted") .HasColumnType("bit") .HasComment("是否删除"); b.Property<long>("Length") .HasColumnType("bigint") .HasComment("文件大小(字节)"); b.Property<string>("LicenseImage") .HasColumnType("nvarchar(max)"); b.Property<string>("Name") .IsRequired() .HasColumnType("nvarchar(max)") .HasComment("名称"); .HasMaxLength(32) .HasColumnType("nvarchar(32)"); b.Property<string>("RelativePath") .HasColumnType("nvarchar(max)") .HasComment("相对路径"); 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") @@ -459,66 +447,7 @@ b.HasKey("Id"); b.ToTable("FileStore", t => { t.HasComment("文件存储"); }); }); modelBuilder.Entity("FlexJobApi.Core.FileVirtualPath", b => { b.Property<Guid>("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property<DateTimeOffset>("CreatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("CreatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("创建操作人"); b.Property<bool>("IsDeleted") .HasColumnType("bit") .HasComment("是否删除"); b.Property<string>("Name") .IsRequired() .HasColumnType("nvarchar(max)") .HasComment("名称"); b.Property<int>("Sort") .HasColumnType("int") .HasComment("排序"); b.Property<Guid>("StoreId") .HasColumnType("uniqueidentifier") .HasComment("文件存储Id"); b.Property<string>("TraceId") .HasColumnType("nvarchar(max)") .HasComment("跟踪Id"); b.Property<DateTimeOffset?>("UpdatedTime") .HasColumnType("datetimeoffset"); b.Property<Guid?>("UpdatedUserInfoId") .HasColumnType("uniqueidentifier") .HasComment("最后更新操作人"); b.Property<string>("VirtualPath") .IsRequired() .HasColumnType("nvarchar(max)") .HasComment("虚拟路径"); b.HasKey("Id"); b.HasIndex("StoreId"); b.ToTable("FileVirtualPath", t => { t.HasComment("文件虚拟路径"); }); b.ToTable("EnterpriseAuth"); }); modelBuilder.Entity("FlexJobApi.Core.Menu", b => @@ -1202,18 +1131,14 @@ .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property<Guid?>("AvatarId") .HasColumnType("uniqueidentifier") .HasComment("头像Id"); b.Property<string>("BankCard") .HasMaxLength(32) .HasColumnType("nvarchar(32)") .HasComment("银行卡号"); b.Property<Guid?>("BankCardImgId") .HasColumnType("uniqueidentifier") .HasComment("银行卡照片Id"); b.Property<string>("BankCardImg") .HasColumnType("nvarchar(max)") .HasComment("银行卡照片"); b.Property<DateTimeOffset>("CreatedTime") .HasColumnType("datetimeoffset"); @@ -1226,13 +1151,13 @@ .HasColumnType("nvarchar(max)") .HasComment("身份证号"); b.Property<Guid?>("IdentityBackImgId") .HasColumnType("uniqueidentifier") .HasComment("身份证国徽面Id"); b.Property<string>("IdentityBackImg") .HasColumnType("nvarchar(max)") .HasComment("身份证国徽面"); b.Property<Guid?>("IdentityImgId") .HasColumnType("uniqueidentifier") .HasComment("身份证人像面Id"); b.Property<string>("IdentityImg") .HasColumnType("nvarchar(max)") .HasComment("身份证人像面"); b.Property<bool>("IsCheckPhoneNumber") .HasColumnType("bit") @@ -1288,14 +1213,6 @@ b.HasKey("Id"); b.HasIndex("AvatarId"); b.HasIndex("BankCardImgId"); b.HasIndex("IdentityBackImgId"); b.HasIndex("IdentityImgId"); b.ToTable("UserAuth", t => { t.HasComment("用户"); @@ -1321,6 +1238,9 @@ b.Property<Guid>("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property<string>("Avatar") .HasColumnType("nvarchar(max)"); b.Property<Guid?>("CityId") .HasColumnType("uniqueidentifier") @@ -1364,6 +1284,9 @@ b.Property<Guid?>("PersonalIdentityId") .HasColumnType("uniqueidentifier") .HasComment("身份Id"); b.Property<Guid?>("ProvinceId") .HasColumnType("uniqueidentifier"); b.Property<string>("Remark") .HasColumnType("nvarchar(max)") @@ -1422,6 +1345,8 @@ b.HasIndex("EnterpriseId"); b.HasIndex("PersonalIdentityId"); b.HasIndex("ProvinceId"); b.HasIndex("UserAuthId"); @@ -1514,9 +1439,9 @@ .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property<Guid?>("BackImgId") .HasColumnType("uniqueidentifier") .HasComment("证书反面照片Id"); b.Property<string>("BackImg") .HasColumnType("nvarchar(max)") .HasComment("证书反面照片"); b.Property<string>("Code") .IsRequired() @@ -1535,9 +1460,9 @@ .HasColumnType("datetime2") .HasComment("结束日期"); b.Property<Guid>("ImgId") .HasColumnType("uniqueidentifier") .HasComment("证书正面照片Id"); b.Property<string>("Img") .HasColumnType("nvarchar(max)") .HasComment("证书正面照片"); b.Property<bool>("IsDeleted") .HasColumnType("bit") @@ -1579,10 +1504,6 @@ .HasComment("用户信息Id"); b.HasKey("Id"); b.HasIndex("BackImgId"); b.HasIndex("ImgId"); b.HasIndex("TypeId"); @@ -1711,9 +1632,9 @@ .HasColumnType("uniqueidentifier") .HasComment("创建操作人"); b.Property<Guid>("ImgId") .HasColumnType("uniqueidentifier") .HasComment("照片Id"); b.Property<string>("Img") .HasColumnType("nvarchar(max)") .HasComment("照片"); b.Property<bool>("IsDeleted") .HasColumnType("bit") @@ -1739,8 +1660,6 @@ .HasComment("用户信息Id"); b.HasKey("Id"); b.HasIndex("ImgId"); b.HasIndex("UserInfoId"); @@ -1838,34 +1757,31 @@ modelBuilder.Entity("FlexJobApi.Core.Enterprise", b => { b.HasOne("FlexJobApi.Core.FileVirtualPath", "IdentityBackImg") b.HasOne("FlexJobApi.Core.DictionaryData", "City") .WithMany() .HasForeignKey("IdentityBackImgId"); .HasForeignKey("CityId"); b.HasOne("FlexJobApi.Core.FileVirtualPath", "IdentityImg") b.HasOne("FlexJobApi.Core.EnterpriseAuth", "EnterpriseAuth") .WithMany() .HasForeignKey("IdentityImgId"); b.HasOne("FlexJobApi.Core.FileVirtualPath", "LicenseImage") .WithMany() .HasForeignKey("LicenseImageId"); b.Navigation("IdentityBackImg"); b.Navigation("IdentityImg"); b.Navigation("LicenseImage"); }); modelBuilder.Entity("FlexJobApi.Core.FileVirtualPath", b => { b.HasOne("FlexJobApi.Core.FileStore", "Store") .WithMany() .HasForeignKey("StoreId") .HasForeignKey("EnterpriseAuthId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Store"); b.HasOne("FlexJobApi.Core.DictionaryData", "IndustryType") .WithMany() .HasForeignKey("IndustryTypeId"); b.HasOne("FlexJobApi.Core.DictionaryData", "Province") .WithMany() .HasForeignKey("ProvinceId"); b.Navigation("City"); b.Navigation("EnterpriseAuth"); b.Navigation("IndustryType"); b.Navigation("Province"); }); modelBuilder.Entity("FlexJobApi.Core.Menu", b => @@ -1989,33 +1905,6 @@ b.Navigation("UserInfo"); }); modelBuilder.Entity("FlexJobApi.Core.UserAuth", b => { b.HasOne("FlexJobApi.Core.FileVirtualPath", "Avatar") .WithMany() .HasForeignKey("AvatarId"); b.HasOne("FlexJobApi.Core.FileVirtualPath", "BankCardImg") .WithMany() .HasForeignKey("BankCardImgId"); b.HasOne("FlexJobApi.Core.FileVirtualPath", "IdentityBackImg") .WithMany() .HasForeignKey("IdentityBackImgId"); b.HasOne("FlexJobApi.Core.FileVirtualPath", "IdentityImg") .WithMany() .HasForeignKey("IdentityImgId"); b.Navigation("Avatar"); b.Navigation("BankCardImg"); b.Navigation("IdentityBackImg"); b.Navigation("IdentityImg"); }); modelBuilder.Entity("FlexJobApi.Core.UserInfo", b => { b.HasOne("FlexJobApi.Core.DictionaryData", "City") @@ -2034,6 +1923,10 @@ .WithMany() .HasForeignKey("PersonalIdentityId"); b.HasOne("FlexJobApi.Core.DictionaryData", "Province") .WithMany() .HasForeignKey("ProvinceId"); b.HasOne("FlexJobApi.Core.UserAuth", "UserAuth") .WithMany("UserInfos") .HasForeignKey("UserAuthId") @@ -2047,6 +1940,8 @@ b.Navigation("Enterprise"); b.Navigation("PersonalIdentity"); b.Navigation("Province"); b.Navigation("UserAuth"); }); @@ -2064,16 +1959,6 @@ modelBuilder.Entity("FlexJobApi.Core.UserInfoCredential", b => { b.HasOne("FlexJobApi.Core.FileVirtualPath", "BackImg") .WithMany() .HasForeignKey("BackImgId"); b.HasOne("FlexJobApi.Core.FileVirtualPath", "Img") .WithMany() .HasForeignKey("ImgId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("FlexJobApi.Core.DictionaryData", "Type") .WithMany() .HasForeignKey("TypeId"); @@ -2083,10 +1968,6 @@ .HasForeignKey("UserInfoId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("BackImg"); b.Navigation("Img"); b.Navigation("Type"); @@ -2133,19 +2014,11 @@ modelBuilder.Entity("FlexJobApi.Core.UserInfoPhoto", b => { b.HasOne("FlexJobApi.Core.FileVirtualPath", "Img") .WithMany() .HasForeignKey("ImgId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("FlexJobApi.Core.UserInfo", "UserInfo") .WithMany() .HasForeignKey("UserInfoId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Img"); b.Navigation("UserInfo"); }); FlexJobApi.User.Application/Auths/Commands/PasswordLoginCommandHandler.cs
@@ -33,7 +33,7 @@ .Select(it => new { it.Id, it.UserAuth.Avatar, it.Avatar, it.UserAuth.Name, it.UserAuth.UserName, it.UserAuth.PhoneNumber, FlexJobApi.User.Application/Auths/Queries/GetCurrentLogierMenuQueryHandler.cs
New file @@ -0,0 +1,67 @@ using FlexJobApi.Core; using Furion.DatabaseAccessor; using Furion.FriendlyException; using Mapster; using MediatR; using Microsoft.EntityFrameworkCore; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace FlexJobApi.User.Application { /// <summary> /// 获取当前登录用户菜单详情 /// </summary> public class GetCurrentLogierMenuQueryHandler( IRepository<Menu> repMenu, IRepository<RoleMenu> repRoleMenu, IRepository<UserInfoRole> repUserInfoRole ) : IRequestHandler<GetCurrentLogierMenuQuery, GetMenuQueryResult> { private readonly IRepository<Menu> repMenu = repMenu; private readonly IRepository<RoleMenu> repRoleMenu = repRoleMenu; private readonly IRepository<UserInfoRole> repUserInfoRole = repUserInfoRole; /// <inheritdoc/> public async Task<GetMenuQueryResult> Handle(GetCurrentLogierMenuQuery request, CancellationToken cancellationToken) { var logier = JwtUtils.GetCurrentLogier(); var model = await repMenu.AsQueryable().AsNoTracking() .Where(it => it.Id == request.Id) .ProjectToType<GetMenuQueryResult>() .FirstOrDefaultAsync(cancellationToken); if (model == null) throw Oops.Oh(EnumErrorCodeType.s404, "该菜单"); var items = await (from m in repMenu.AsQueryable().AsNoTracking() join rm in repRoleMenu.AsQueryable().AsNoTracking() on m.Id equals rm.MenuId join ur in repUserInfoRole.AsQueryable().AsNoTracking() on rm.RoleId equals ur.RoleId where m.ParentId == request.Id && ur.UserInfoId == logier.UserInfoId && !m.IsDisabled && (m.Type == EnumMenuType.Button || m.Type == EnumMenuType.Field) select m).ProjectToType<GetMenuQueryResultItem>().ToListAsync(cancellationToken); model.Groups = items.GroupBy(it => it.Group ?? "default") .Select(it => new GetMenuQueryResultGroup { Group = it.Key, ButtonLocations = it .Where(l => l.Type == EnumMenuType.Button) .GroupBy(l => l.Location ?? "default") .Select(l => new GetMenuQueryResultButtonLocation { Location = l.Key, Buttons = l .ToList() .Adapt<List<GetMenuQueryResultButton>>() }) .ToList(), Fields = it .Where(f => f.Type == EnumMenuType.Field) .ToList() .Adapt<List<GetMenuQueryResultField>>() }) .ToList(); return model; } } } FlexJobApi.User.Application/Enterprises/Commands/EnterpriseCommandHandler.cs
@@ -19,8 +19,11 @@ public class EnterpriseCommandHandler( IRepository<Enterprise> rep, IRepository<UserInfo> repUserInfo ) : IRequestHandler<SaveEnterpriseCommand, Guid> ) : IRequestHandler<SaveEnterpriseCommand, Guid>, IRequestHandler<SetEnterpriseElectronSignSettingCommand, Guid>, IRequestHandler<SetEnterpriseSmsSettingCommand, Guid> { private readonly IRepository<Enterprise> rep = rep; private readonly IRepository<UserInfo> repUserInfo = repUserInfo; @@ -34,10 +37,12 @@ public async Task<Guid> Handle(SaveEnterpriseCommand request, CancellationToken cancellationToken) { var entity = await rep.AsQueryable() .FirstOrDefaultAsync(it => it.SocietyCreditCode == request.SocietyCreditCode); .Include(it => it.EnterpriseAuth) .FirstOrDefaultAsync(it => it.EnterpriseAuth.SocietyCreditCode == request.EnterpriseAuth.SocietyCreditCode); if (entity == null) { entity = new Enterprise(); entity.EnterpriseAuth = new EnterpriseAuth(); request.Adapt(entity); await rep.InsertAsync(entity); } @@ -77,5 +82,35 @@ return entity.Id; } /// <summary> /// 设置企业电子签配置 /// </summary> /// <param name="request"></param> /// <param name="cancellationToken"></param> /// <returns></returns> public async Task<Guid> Handle(SetEnterpriseElectronSignSettingCommand request, CancellationToken cancellationToken) { var entity = await rep.AsQueryable().FirstOrDefaultAsync(it => it.Id == request.Id, cancellationToken); if (entity == null) throw Oops.Oh(EnumErrorCodeType.s404, "该企业"); request.Adapt(entity); await rep.UpdateAsync(entity); return entity.Id; } /// <summary> /// 设置企业短信配置 /// </summary> /// <param name="request"></param> /// <param name="cancellationToken"></param> /// <returns></returns> public async Task<Guid> Handle(SetEnterpriseSmsSettingCommand request, CancellationToken cancellationToken) { var entity = await rep.AsQueryable().FirstOrDefaultAsync(it => it.Id == request.Id, cancellationToken); if (entity == null) throw Oops.Oh(EnumErrorCodeType.s404, "该企业"); request.Adapt(entity); await rep.UpdateAsync(entity); return entity.Id; } } } FlexJobApi.User.Application/Enterprises/Queries/EnterprisesQueryHandler.cs
@@ -28,13 +28,13 @@ if (request.Keywords.IsNotNull()) { q = q.Where(it => it.EnterpriseName.Contains(request.Keywords) || it.LegalPerson.Contains(request.Keywords) it.EnterpriseAuth.EnterpriseName.Contains(request.Keywords) || it.EnterpriseAuth.LegalPerson.Contains(request.Keywords) || it.Contacts.Contains(request.Keywords)); } if (request.IsConfigured.HasValue) { q = q.Where(it => (it.IsCheckedBankCard && it.RealAccess.HasValue && it.SmsAccess.HasValue) == request.IsConfigured); } return q; }, cancellationToken: cancellationToken); FlexJobApi.User.Application/FlexJobApi.User.Application.xml
@@ -25,6 +25,19 @@ <member name="M:FlexJobApi.User.Application.GetAliyunOSSAcsQueryHandler.Handle(FlexJobApi.Core.GetAliyunOSSAcsQuery,System.Threading.CancellationToken)"> <inheritdoc/> </member> <member name="T:FlexJobApi.User.Application.GetCurrentLogierMenuQueryHandler"> <summary> 获取当前登录用户菜单详情 </summary> </member> <member name="M:FlexJobApi.User.Application.GetCurrentLogierMenuQueryHandler.#ctor(Furion.DatabaseAccessor.IRepository{FlexJobApi.Core.Menu},Furion.DatabaseAccessor.IRepository{FlexJobApi.Core.RoleMenu},Furion.DatabaseAccessor.IRepository{FlexJobApi.Core.UserInfoRole})"> <summary> 获取当前登录用户菜单详情 </summary> </member> <member name="M:FlexJobApi.User.Application.GetCurrentLogierMenuQueryHandler.Handle(FlexJobApi.Core.GetCurrentLogierMenuQuery,System.Threading.CancellationToken)"> <inheritdoc/> </member> <member name="T:FlexJobApi.User.Application.GetCurrentLogierMenusQueryHandler"> <summary> 获取当前登录用户菜单 @@ -64,6 +77,22 @@ <param name="cancellationToken"></param> <returns></returns> </member> <member name="M:FlexJobApi.User.Application.EnterpriseCommandHandler.Handle(FlexJobApi.Core.SetEnterpriseElectronSignSettingCommand,System.Threading.CancellationToken)"> <summary> 设置企业电子签配置 </summary> <param name="request"></param> <param name="cancellationToken"></param> <returns></returns> </member> <member name="M:FlexJobApi.User.Application.EnterpriseCommandHandler.Handle(FlexJobApi.Core.SetEnterpriseSmsSettingCommand,System.Threading.CancellationToken)"> <summary> 设置企业短信配置 </summary> <param name="request"></param> <param name="cancellationToken"></param> <returns></returns> </member> <member name="T:FlexJobApi.User.Application.EnterprisesQueryHandler"> <summary> 企业查询处理器