diff --git a/aspnet-core/LINGYUN.MicroService.All.sln b/aspnet-core/LINGYUN.MicroService.All.sln
index 994839f02..dc6fe1a73 100644
--- a/aspnet-core/LINGYUN.MicroService.All.sln
+++ b/aspnet-core/LINGYUN.MicroService.All.sln
@@ -605,7 +605,33 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.RulesEngineMana
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.IdentityServer.Portal", "modules\identityServer\LINGYUN.Abp.IdentityServer.Portal\LINGYUN.Abp.IdentityServer.Portal.csproj", "{5B20BA13-40FF-4743-AEEE-2E3F887F50C6}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LINGYUN.Abp.OpenIddict.Portal", "modules\openIddict\LINGYUN.Abp.OpenIddict.Portal\LINGYUN.Abp.OpenIddict.Portal.csproj", "{03EC70B8-912C-4FBE-94DD-6327F4F23021}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.OpenIddict.Portal", "modules\openIddict\LINGYUN.Abp.OpenIddict.Portal\LINGYUN.Abp.OpenIddict.Portal.csproj", "{03EC70B8-912C-4FBE-94DD-6327F4F23021}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "elsa", "elsa", "{0A00FAF9-A96B-4BF5-8D42-15C8678F70F3}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Elsa", "modules\elsa\LINGYUN.Abp.Elsa\LINGYUN.Abp.Elsa.csproj", "{C037F0CE-8223-4D4A-B15F-18B7D6AA447F}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Elsa.Activities", "modules\elsa\LINGYUN.Abp.Elsa.Activities\LINGYUN.Abp.Elsa.Activities.csproj", "{E293BB96-5054-497B-BCE5-64AF9B0457B1}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Elsa.Activities.BlobStoring", "modules\elsa\LINGYUN.Abp.Elsa.Activities.BlobStoring\LINGYUN.Abp.Elsa.Activities.BlobStoring.csproj", "{FB7AF3F8-44CD-4732-8A25-A43902437B89}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Elsa.Activities.Emailing", "modules\elsa\LINGYUN.Abp.Elsa.Activities.Emailing\LINGYUN.Abp.Elsa.Activities.Emailing.csproj", "{6472B3C1-C237-49CD-82C8-821AD001096A}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Elsa.Activities.IM", "modules\elsa\LINGYUN.Abp.Elsa.Activities.IM\LINGYUN.Abp.Elsa.Activities.IM.csproj", "{4BE55D79-63E6-4335-A4FA-DFC64BA6CF2F}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Elsa.Activities.Notifications", "modules\elsa\LINGYUN.Abp.Elsa.Activities.Notifications\LINGYUN.Abp.Elsa.Activities.Notifications.csproj", "{FB0B28CA-EE88-4DBF-9E0D-E442757E2B98}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Elsa.Activities.Sms", "modules\elsa\LINGYUN.Abp.Elsa.Activities.Sms\LINGYUN.Abp.Elsa.Activities.Sms.csproj", "{47D57848-A910-4869-8A46-84E40A985FEE}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Elsa.Activities.Webhooks", "modules\elsa\LINGYUN.Abp.Elsa.Activities.Webhooks\LINGYUN.Abp.Elsa.Activities.Webhooks.csproj", "{8A1F9647-B773-40AB-9126-30868014AE58}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Elsa.EntityFrameworkCore", "modules\elsa\LINGYUN.Abp.Elsa.EntityFrameworkCore\LINGYUN.Abp.Elsa.EntityFrameworkCore.csproj", "{4298F0E2-AE43-433D-B5EA-3FDDEE8E49A0}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Elsa.EntityFrameworkCore.MySql", "modules\elsa\LINGYUN.Abp.Elsa.EntityFrameworkCore.MySql\LINGYUN.Abp.Elsa.EntityFrameworkCore.MySql.csproj", "{10CF8240-4276-4199-B3D1-C45F16468EBD}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Elsa.Notifications", "modules\elsa\LINGYUN.Abp.Elsa.Notifications\LINGYUN.Abp.Elsa.Notifications.csproj", "{39DFEFCD-7C73-450F-9A2F-7426188A890B}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Elsa.Server", "modules\elsa\LINGYUN.Abp.Elsa.Server\LINGYUN.Abp.Elsa.Server.csproj", "{C465BB41-9DB7-470F-BC7F-A59D2A7D6083}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -1549,6 +1575,54 @@ Global
{03EC70B8-912C-4FBE-94DD-6327F4F23021}.Debug|Any CPU.Build.0 = Debug|Any CPU
{03EC70B8-912C-4FBE-94DD-6327F4F23021}.Release|Any CPU.ActiveCfg = Release|Any CPU
{03EC70B8-912C-4FBE-94DD-6327F4F23021}.Release|Any CPU.Build.0 = Release|Any CPU
+ {C037F0CE-8223-4D4A-B15F-18B7D6AA447F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {C037F0CE-8223-4D4A-B15F-18B7D6AA447F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {C037F0CE-8223-4D4A-B15F-18B7D6AA447F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {C037F0CE-8223-4D4A-B15F-18B7D6AA447F}.Release|Any CPU.Build.0 = Release|Any CPU
+ {E293BB96-5054-497B-BCE5-64AF9B0457B1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {E293BB96-5054-497B-BCE5-64AF9B0457B1}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {E293BB96-5054-497B-BCE5-64AF9B0457B1}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {E293BB96-5054-497B-BCE5-64AF9B0457B1}.Release|Any CPU.Build.0 = Release|Any CPU
+ {FB7AF3F8-44CD-4732-8A25-A43902437B89}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {FB7AF3F8-44CD-4732-8A25-A43902437B89}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {FB7AF3F8-44CD-4732-8A25-A43902437B89}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {FB7AF3F8-44CD-4732-8A25-A43902437B89}.Release|Any CPU.Build.0 = Release|Any CPU
+ {6472B3C1-C237-49CD-82C8-821AD001096A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {6472B3C1-C237-49CD-82C8-821AD001096A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {6472B3C1-C237-49CD-82C8-821AD001096A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {6472B3C1-C237-49CD-82C8-821AD001096A}.Release|Any CPU.Build.0 = Release|Any CPU
+ {4BE55D79-63E6-4335-A4FA-DFC64BA6CF2F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {4BE55D79-63E6-4335-A4FA-DFC64BA6CF2F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {4BE55D79-63E6-4335-A4FA-DFC64BA6CF2F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {4BE55D79-63E6-4335-A4FA-DFC64BA6CF2F}.Release|Any CPU.Build.0 = Release|Any CPU
+ {FB0B28CA-EE88-4DBF-9E0D-E442757E2B98}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {FB0B28CA-EE88-4DBF-9E0D-E442757E2B98}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {FB0B28CA-EE88-4DBF-9E0D-E442757E2B98}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {FB0B28CA-EE88-4DBF-9E0D-E442757E2B98}.Release|Any CPU.Build.0 = Release|Any CPU
+ {47D57848-A910-4869-8A46-84E40A985FEE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {47D57848-A910-4869-8A46-84E40A985FEE}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {47D57848-A910-4869-8A46-84E40A985FEE}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {47D57848-A910-4869-8A46-84E40A985FEE}.Release|Any CPU.Build.0 = Release|Any CPU
+ {8A1F9647-B773-40AB-9126-30868014AE58}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {8A1F9647-B773-40AB-9126-30868014AE58}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {8A1F9647-B773-40AB-9126-30868014AE58}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {8A1F9647-B773-40AB-9126-30868014AE58}.Release|Any CPU.Build.0 = Release|Any CPU
+ {4298F0E2-AE43-433D-B5EA-3FDDEE8E49A0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {4298F0E2-AE43-433D-B5EA-3FDDEE8E49A0}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {4298F0E2-AE43-433D-B5EA-3FDDEE8E49A0}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {4298F0E2-AE43-433D-B5EA-3FDDEE8E49A0}.Release|Any CPU.Build.0 = Release|Any CPU
+ {10CF8240-4276-4199-B3D1-C45F16468EBD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {10CF8240-4276-4199-B3D1-C45F16468EBD}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {10CF8240-4276-4199-B3D1-C45F16468EBD}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {10CF8240-4276-4199-B3D1-C45F16468EBD}.Release|Any CPU.Build.0 = Release|Any CPU
+ {39DFEFCD-7C73-450F-9A2F-7426188A890B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {39DFEFCD-7C73-450F-9A2F-7426188A890B}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {39DFEFCD-7C73-450F-9A2F-7426188A890B}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {39DFEFCD-7C73-450F-9A2F-7426188A890B}.Release|Any CPU.Build.0 = Release|Any CPU
+ {C465BB41-9DB7-470F-BC7F-A59D2A7D6083}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {C465BB41-9DB7-470F-BC7F-A59D2A7D6083}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {C465BB41-9DB7-470F-BC7F-A59D2A7D6083}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {C465BB41-9DB7-470F-BC7F-A59D2A7D6083}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -1842,6 +1916,19 @@ Global
{97062425-3379-4F8D-BFA2-D445C56C0801} = {F7103498-8B5B-4698-AACE-9E949F732E77}
{5B20BA13-40FF-4743-AEEE-2E3F887F50C6} = {0439B173-F41E-4CE0-A44A-CCB70328F272}
{03EC70B8-912C-4FBE-94DD-6327F4F23021} = {83E698F6-F8CD-4604-AB80-01A203389501}
+ {0A00FAF9-A96B-4BF5-8D42-15C8678F70F3} = {C5CAD011-DF84-4914-939C-0C029DCEF26F}
+ {C037F0CE-8223-4D4A-B15F-18B7D6AA447F} = {0A00FAF9-A96B-4BF5-8D42-15C8678F70F3}
+ {E293BB96-5054-497B-BCE5-64AF9B0457B1} = {0A00FAF9-A96B-4BF5-8D42-15C8678F70F3}
+ {FB7AF3F8-44CD-4732-8A25-A43902437B89} = {0A00FAF9-A96B-4BF5-8D42-15C8678F70F3}
+ {6472B3C1-C237-49CD-82C8-821AD001096A} = {0A00FAF9-A96B-4BF5-8D42-15C8678F70F3}
+ {4BE55D79-63E6-4335-A4FA-DFC64BA6CF2F} = {0A00FAF9-A96B-4BF5-8D42-15C8678F70F3}
+ {FB0B28CA-EE88-4DBF-9E0D-E442757E2B98} = {0A00FAF9-A96B-4BF5-8D42-15C8678F70F3}
+ {47D57848-A910-4869-8A46-84E40A985FEE} = {0A00FAF9-A96B-4BF5-8D42-15C8678F70F3}
+ {8A1F9647-B773-40AB-9126-30868014AE58} = {0A00FAF9-A96B-4BF5-8D42-15C8678F70F3}
+ {4298F0E2-AE43-433D-B5EA-3FDDEE8E49A0} = {0A00FAF9-A96B-4BF5-8D42-15C8678F70F3}
+ {10CF8240-4276-4199-B3D1-C45F16468EBD} = {0A00FAF9-A96B-4BF5-8D42-15C8678F70F3}
+ {39DFEFCD-7C73-450F-9A2F-7426188A890B} = {0A00FAF9-A96B-4BF5-8D42-15C8678F70F3}
+ {C465BB41-9DB7-470F-BC7F-A59D2A7D6083} = {0A00FAF9-A96B-4BF5-8D42-15C8678F70F3}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {C95FDF91-16F2-4A8B-A4BE-0E62D1B66718}
diff --git a/aspnet-core/LINGYUN.MicroService.SingleProject.sln b/aspnet-core/LINGYUN.MicroService.SingleProject.sln
index 7c3928366..0427c66fd 100644
--- a/aspnet-core/LINGYUN.MicroService.SingleProject.sln
+++ b/aspnet-core/LINGYUN.MicroService.SingleProject.sln
@@ -460,6 +460,16 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.PermissionManag
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.PermissionManagement.HttpApi", "modules\permissions-management\LINGYUN.Abp.PermissionManagement.HttpApi\LINGYUN.Abp.PermissionManagement.HttpApi.csproj", "{1DB57C74-1C40-4414-B968-937C3C1C157E}"
EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.PermissionManagement.Domain.OrganizationUnits", "modules\permissions-management\LINGYUN.Abp.PermissionManagement.Domain.OrganizationUnits\LINGYUN.Abp.PermissionManagement.Domain.OrganizationUnits.csproj", "{F10EB725-5A50-4C80-B8D1-88C7BE23D5A9}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Features.Client", "modules\features\LINGYUN.Abp.Features.Client\LINGYUN.Abp.Features.Client.csproj", "{C4D3B4CA-6631-4447-9D89-A535305E581A}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.FeatureManagement.Client", "modules\features\LINGYUN.Abp.FeatureManagement.Client\LINGYUN.Abp.FeatureManagement.Client.csproj", "{18FCB763-1EFF-47DF-ACED-98B7F994FD10}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Logging.Serilog.Elasticsearch", "modules\logging\LINGYUN.Abp.Logging.Serilog.Elasticsearch\LINGYUN.Abp.Logging.Serilog.Elasticsearch.csproj", "{3B5EB3D6-08FD-490C-BC70-805B199A0333}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Http.Client.Wrapper", "modules\common\LINGYUN.Abp.Http.Client.Wrapper\LINGYUN.Abp.Http.Client.Wrapper.csproj", "{28422FE4-8D58-4D8A-8363-7A9D569A5695}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -1198,6 +1208,26 @@ Global
{1DB57C74-1C40-4414-B968-937C3C1C157E}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1DB57C74-1C40-4414-B968-937C3C1C157E}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1DB57C74-1C40-4414-B968-937C3C1C157E}.Release|Any CPU.Build.0 = Release|Any CPU
+ {F10EB725-5A50-4C80-B8D1-88C7BE23D5A9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {F10EB725-5A50-4C80-B8D1-88C7BE23D5A9}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {F10EB725-5A50-4C80-B8D1-88C7BE23D5A9}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {F10EB725-5A50-4C80-B8D1-88C7BE23D5A9}.Release|Any CPU.Build.0 = Release|Any CPU
+ {C4D3B4CA-6631-4447-9D89-A535305E581A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {C4D3B4CA-6631-4447-9D89-A535305E581A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {C4D3B4CA-6631-4447-9D89-A535305E581A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {C4D3B4CA-6631-4447-9D89-A535305E581A}.Release|Any CPU.Build.0 = Release|Any CPU
+ {18FCB763-1EFF-47DF-ACED-98B7F994FD10}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {18FCB763-1EFF-47DF-ACED-98B7F994FD10}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {18FCB763-1EFF-47DF-ACED-98B7F994FD10}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {18FCB763-1EFF-47DF-ACED-98B7F994FD10}.Release|Any CPU.Build.0 = Release|Any CPU
+ {3B5EB3D6-08FD-490C-BC70-805B199A0333}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {3B5EB3D6-08FD-490C-BC70-805B199A0333}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {3B5EB3D6-08FD-490C-BC70-805B199A0333}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {3B5EB3D6-08FD-490C-BC70-805B199A0333}.Release|Any CPU.Build.0 = Release|Any CPU
+ {28422FE4-8D58-4D8A-8363-7A9D569A5695}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {28422FE4-8D58-4D8A-8363-7A9D569A5695}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {28422FE4-8D58-4D8A-8363-7A9D569A5695}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {28422FE4-8D58-4D8A-8363-7A9D569A5695}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -1423,6 +1453,11 @@ Global
{FAD86432-6A95-47DE-8E3A-FC2101753C52} = {99CB6AD9-92E8-4B9B-99E3-28404AA41655}
{5F278E32-3A2A-4654-BD3C-B183301382FB} = {99CB6AD9-92E8-4B9B-99E3-28404AA41655}
{1DB57C74-1C40-4414-B968-937C3C1C157E} = {99CB6AD9-92E8-4B9B-99E3-28404AA41655}
+ {F10EB725-5A50-4C80-B8D1-88C7BE23D5A9} = {99CB6AD9-92E8-4B9B-99E3-28404AA41655}
+ {C4D3B4CA-6631-4447-9D89-A535305E581A} = {7F7FB560-7005-438B-8D95-4FA781B5F1F3}
+ {18FCB763-1EFF-47DF-ACED-98B7F994FD10} = {7F7FB560-7005-438B-8D95-4FA781B5F1F3}
+ {3B5EB3D6-08FD-490C-BC70-805B199A0333} = {FF0DFDF2-2E59-48B9-9C0F-CFF13EA0AD58}
+ {28422FE4-8D58-4D8A-8363-7A9D569A5695} = {40A9F0DB-66AA-42A8-8670-9DD6DA992103}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {711A43C0-A2F8-4E5C-9B9F-F2551E4B3FF1}
diff --git a/aspnet-core/LINGYUN.MicroService.WebhooksManagement.sln b/aspnet-core/LINGYUN.MicroService.WebhooksManagement.sln
index 14d4b1146..af3592103 100644
--- a/aspnet-core/LINGYUN.MicroService.WebhooksManagement.sln
+++ b/aspnet-core/LINGYUN.MicroService.WebhooksManagement.sln
@@ -65,6 +65,60 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Wrapper", "modu
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.AspNetCore.Mvc.Wrapper", "modules\mvc\LINGYUN.Abp.AspNetCore.Mvc.Wrapper\LINGYUN.Abp.AspNetCore.Mvc.Wrapper.csproj", "{FFE603F9-DB7E-45C8-9852-354363F9D799}"
EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "saas", "saas", "{E5060632-E9DF-44D4-BB82-B0C45A39BFF8}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Saas.EntityFrameworkCore", "modules\saas\LINGYUN.Abp.Saas.EntityFrameworkCore\LINGYUN.Abp.Saas.EntityFrameworkCore.csproj", "{AFB07F2B-4858-448D-8882-30A1142A0E7C}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Data.DbMigrator", "modules\common\LINGYUN.Abp.Data.DbMigrator\LINGYUN.Abp.Data.DbMigrator.csproj", "{80804006-EED4-4CEA-88F8-A8F45EDFBF0D}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Saas.Domain.Shared", "modules\saas\LINGYUN.Abp.Saas.Domain.Shared\LINGYUN.Abp.Saas.Domain.Shared.csproj", "{2C948A5C-0BA4-40EE-8EAF-851D81077E7E}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Saas.Domain", "modules\saas\LINGYUN.Abp.Saas.Domain\LINGYUN.Abp.Saas.Domain.csproj", "{56642E5F-B344-4C31-8501-ECDAADEA1C36}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Saas.Application.Contracts", "modules\saas\LINGYUN.Abp.Saas.Application.Contracts\LINGYUN.Abp.Saas.Application.Contracts.csproj", "{92CCFBCE-AF47-4F66-A900-FD29CDF284A2}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Saas.Application", "modules\saas\LINGYUN.Abp.Saas.Application\LINGYUN.Abp.Saas.Application.csproj", "{59B6ABC7-8492-46F2-8139-2551E5796D2A}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "task-management", "task-management", "{8C3DF571-BAC3-48C4-B46A-AC0E0EAA9871}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.BackgroundTasks.Quartz", "modules\task-management\LINGYUN.Abp.BackgroundTasks.Quartz\LINGYUN.Abp.BackgroundTasks.Quartz.csproj", "{C5E82A68-9343-4BCB-AC3A-ED74172212FE}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.BackgroundTasks.ExceptionHandling", "modules\task-management\LINGYUN.Abp.BackgroundTasks.ExceptionHandling\LINGYUN.Abp.BackgroundTasks.ExceptionHandling.csproj", "{A383E007-340B-489F-88DA-D44BCC7E37FA}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.ExceptionHandling.Emailing", "modules\common\LINGYUN.Abp.ExceptionHandling.Emailing\LINGYUN.Abp.ExceptionHandling.Emailing.csproj", "{F94612B7-7F6F-4AEC-A895-6B524C1313AC}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "authorization", "authorization", "{416CC55B-C2CD-486D-9BE9-5F0843317240}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Authorization.OrganizationUnits", "modules\authorization\LINGYUN.Abp.Authorization.OrganizationUnits\LINGYUN.Abp.Authorization.OrganizationUnits.csproj", "{D95BC108-BB30-4C88-A381-0AC5F7371184}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "logging", "logging", "{C1134321-E1D5-477A-A580-AB3E5E833778}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Serilog.Enrichers.Application", "modules\logging\LINGYUN.Abp.Serilog.Enrichers.Application\LINGYUN.Abp.Serilog.Enrichers.Application.csproj", "{2F1541CB-8FA2-4AEF-9036-73B93FF8742C}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "localization", "localization", "{93E7C9F3-68E9-4E4C-8810-4986AF7B2DC0}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.AspNetCore.Mvc.Localization", "modules\localization\LINGYUN.Abp.AspNetCore.Mvc.Localization\LINGYUN.Abp.AspNetCore.Mvc.Localization.csproj", "{1A4E882C-6651-4F9D-A432-6FA26E17673F}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Http.Client.Wrapper", "modules\common\LINGYUN.Abp.Http.Client.Wrapper\LINGYUN.Abp.Http.Client.Wrapper.csproj", "{2B1CE080-588B-4824-AA84-7DBBB3FFCB37}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.BackgroundTasks.DistributedLocking", "modules\task-management\LINGYUN.Abp.BackgroundTasks.DistributedLocking\LINGYUN.Abp.BackgroundTasks.DistributedLocking.csproj", "{36BEE9C9-8D1A-43AE-880F-EAF646750099}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Localization.CultureMap", "modules\localization\LINGYUN.Abp.Localization.CultureMap\LINGYUN.Abp.Localization.CultureMap.csproj", "{0DAA2C37-FDEB-4E32-8514-E10432AC6DEF}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Serilog.Enrichers.UniqueId", "modules\logging\LINGYUN.Abp.Serilog.Enrichers.UniqueId\LINGYUN.Abp.Serilog.Enrichers.UniqueId.csproj", "{7EE853B4-B795-4036-97F1-42674DE7CD7D}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "lt", "lt", "{32755A4F-2D52-44D0-88FB-3038007851EC}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.LocalizationManagement.EntityFrameworkCore", "modules\lt\LINGYUN.Abp.LocalizationManagement.EntityFrameworkCore\LINGYUN.Abp.LocalizationManagement.EntityFrameworkCore.csproj", "{10A795AB-710F-4FDF-8F84-0058CC22C08F}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.EventBus.CAP", "modules\common\LINGYUN.Abp.EventBus.CAP\LINGYUN.Abp.EventBus.CAP.csproj", "{96EE3984-0ABB-49B0-9779-DF3709C9B13F}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "auditing", "auditing", "{64643A14-D2F9-4E42-84B0-719C01017539}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.AuditLogging.Elasticsearch", "modules\auditing\LINGYUN.Abp.AuditLogging.Elasticsearch\LINGYUN.Abp.AuditLogging.Elasticsearch.csproj", "{1A483DA8-A316-4D82-85CF-7AF2DE88FB68}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.TaskManagement.EntityFrameworkCore", "modules\task-management\LINGYUN.Abp.TaskManagement.EntityFrameworkCore\LINGYUN.Abp.TaskManagement.EntityFrameworkCore.csproj", "{16ADDA63-31EA-4096-94B1-380E7B8260E3}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -167,6 +221,86 @@ Global
{FFE603F9-DB7E-45C8-9852-354363F9D799}.Debug|Any CPU.Build.0 = Debug|Any CPU
{FFE603F9-DB7E-45C8-9852-354363F9D799}.Release|Any CPU.ActiveCfg = Release|Any CPU
{FFE603F9-DB7E-45C8-9852-354363F9D799}.Release|Any CPU.Build.0 = Release|Any CPU
+ {AFB07F2B-4858-448D-8882-30A1142A0E7C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {AFB07F2B-4858-448D-8882-30A1142A0E7C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {AFB07F2B-4858-448D-8882-30A1142A0E7C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {AFB07F2B-4858-448D-8882-30A1142A0E7C}.Release|Any CPU.Build.0 = Release|Any CPU
+ {80804006-EED4-4CEA-88F8-A8F45EDFBF0D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {80804006-EED4-4CEA-88F8-A8F45EDFBF0D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {80804006-EED4-4CEA-88F8-A8F45EDFBF0D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {80804006-EED4-4CEA-88F8-A8F45EDFBF0D}.Release|Any CPU.Build.0 = Release|Any CPU
+ {2C948A5C-0BA4-40EE-8EAF-851D81077E7E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {2C948A5C-0BA4-40EE-8EAF-851D81077E7E}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {2C948A5C-0BA4-40EE-8EAF-851D81077E7E}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {2C948A5C-0BA4-40EE-8EAF-851D81077E7E}.Release|Any CPU.Build.0 = Release|Any CPU
+ {56642E5F-B344-4C31-8501-ECDAADEA1C36}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {56642E5F-B344-4C31-8501-ECDAADEA1C36}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {56642E5F-B344-4C31-8501-ECDAADEA1C36}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {56642E5F-B344-4C31-8501-ECDAADEA1C36}.Release|Any CPU.Build.0 = Release|Any CPU
+ {92CCFBCE-AF47-4F66-A900-FD29CDF284A2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {92CCFBCE-AF47-4F66-A900-FD29CDF284A2}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {92CCFBCE-AF47-4F66-A900-FD29CDF284A2}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {92CCFBCE-AF47-4F66-A900-FD29CDF284A2}.Release|Any CPU.Build.0 = Release|Any CPU
+ {59B6ABC7-8492-46F2-8139-2551E5796D2A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {59B6ABC7-8492-46F2-8139-2551E5796D2A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {59B6ABC7-8492-46F2-8139-2551E5796D2A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {59B6ABC7-8492-46F2-8139-2551E5796D2A}.Release|Any CPU.Build.0 = Release|Any CPU
+ {C5E82A68-9343-4BCB-AC3A-ED74172212FE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {C5E82A68-9343-4BCB-AC3A-ED74172212FE}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {C5E82A68-9343-4BCB-AC3A-ED74172212FE}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {C5E82A68-9343-4BCB-AC3A-ED74172212FE}.Release|Any CPU.Build.0 = Release|Any CPU
+ {A383E007-340B-489F-88DA-D44BCC7E37FA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {A383E007-340B-489F-88DA-D44BCC7E37FA}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {A383E007-340B-489F-88DA-D44BCC7E37FA}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {A383E007-340B-489F-88DA-D44BCC7E37FA}.Release|Any CPU.Build.0 = Release|Any CPU
+ {F94612B7-7F6F-4AEC-A895-6B524C1313AC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {F94612B7-7F6F-4AEC-A895-6B524C1313AC}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {F94612B7-7F6F-4AEC-A895-6B524C1313AC}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {F94612B7-7F6F-4AEC-A895-6B524C1313AC}.Release|Any CPU.Build.0 = Release|Any CPU
+ {D95BC108-BB30-4C88-A381-0AC5F7371184}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {D95BC108-BB30-4C88-A381-0AC5F7371184}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {D95BC108-BB30-4C88-A381-0AC5F7371184}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {D95BC108-BB30-4C88-A381-0AC5F7371184}.Release|Any CPU.Build.0 = Release|Any CPU
+ {2F1541CB-8FA2-4AEF-9036-73B93FF8742C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {2F1541CB-8FA2-4AEF-9036-73B93FF8742C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {2F1541CB-8FA2-4AEF-9036-73B93FF8742C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {2F1541CB-8FA2-4AEF-9036-73B93FF8742C}.Release|Any CPU.Build.0 = Release|Any CPU
+ {1A4E882C-6651-4F9D-A432-6FA26E17673F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {1A4E882C-6651-4F9D-A432-6FA26E17673F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {1A4E882C-6651-4F9D-A432-6FA26E17673F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {1A4E882C-6651-4F9D-A432-6FA26E17673F}.Release|Any CPU.Build.0 = Release|Any CPU
+ {2B1CE080-588B-4824-AA84-7DBBB3FFCB37}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {2B1CE080-588B-4824-AA84-7DBBB3FFCB37}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {2B1CE080-588B-4824-AA84-7DBBB3FFCB37}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {2B1CE080-588B-4824-AA84-7DBBB3FFCB37}.Release|Any CPU.Build.0 = Release|Any CPU
+ {36BEE9C9-8D1A-43AE-880F-EAF646750099}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {36BEE9C9-8D1A-43AE-880F-EAF646750099}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {36BEE9C9-8D1A-43AE-880F-EAF646750099}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {36BEE9C9-8D1A-43AE-880F-EAF646750099}.Release|Any CPU.Build.0 = Release|Any CPU
+ {0DAA2C37-FDEB-4E32-8514-E10432AC6DEF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {0DAA2C37-FDEB-4E32-8514-E10432AC6DEF}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {0DAA2C37-FDEB-4E32-8514-E10432AC6DEF}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {0DAA2C37-FDEB-4E32-8514-E10432AC6DEF}.Release|Any CPU.Build.0 = Release|Any CPU
+ {7EE853B4-B795-4036-97F1-42674DE7CD7D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {7EE853B4-B795-4036-97F1-42674DE7CD7D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {7EE853B4-B795-4036-97F1-42674DE7CD7D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {7EE853B4-B795-4036-97F1-42674DE7CD7D}.Release|Any CPU.Build.0 = Release|Any CPU
+ {10A795AB-710F-4FDF-8F84-0058CC22C08F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {10A795AB-710F-4FDF-8F84-0058CC22C08F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {10A795AB-710F-4FDF-8F84-0058CC22C08F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {10A795AB-710F-4FDF-8F84-0058CC22C08F}.Release|Any CPU.Build.0 = Release|Any CPU
+ {96EE3984-0ABB-49B0-9779-DF3709C9B13F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {96EE3984-0ABB-49B0-9779-DF3709C9B13F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {96EE3984-0ABB-49B0-9779-DF3709C9B13F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {96EE3984-0ABB-49B0-9779-DF3709C9B13F}.Release|Any CPU.Build.0 = Release|Any CPU
+ {1A483DA8-A316-4D82-85CF-7AF2DE88FB68}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {1A483DA8-A316-4D82-85CF-7AF2DE88FB68}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {1A483DA8-A316-4D82-85CF-7AF2DE88FB68}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {1A483DA8-A316-4D82-85CF-7AF2DE88FB68}.Release|Any CPU.Build.0 = Release|Any CPU
+ {16ADDA63-31EA-4096-94B1-380E7B8260E3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {16ADDA63-31EA-4096-94B1-380E7B8260E3}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {16ADDA63-31EA-4096-94B1-380E7B8260E3}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {16ADDA63-31EA-4096-94B1-380E7B8260E3}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -196,6 +330,26 @@ Global
{37053701-FD7D-4204-BF82-4FEDE0A28E60} = {E677C08C-DF2A-44DB-A2E2-E491734F3D5B}
{9AEE2B36-D7A7-4EA2-8A22-888E896012E8} = {4530BC52-D8D7-4022-B1E9-F327A0574835}
{FFE603F9-DB7E-45C8-9852-354363F9D799} = {4530BC52-D8D7-4022-B1E9-F327A0574835}
+ {AFB07F2B-4858-448D-8882-30A1142A0E7C} = {E5060632-E9DF-44D4-BB82-B0C45A39BFF8}
+ {80804006-EED4-4CEA-88F8-A8F45EDFBF0D} = {FB7A9794-06D2-42CF-939E-4626497B97BD}
+ {2C948A5C-0BA4-40EE-8EAF-851D81077E7E} = {E5060632-E9DF-44D4-BB82-B0C45A39BFF8}
+ {56642E5F-B344-4C31-8501-ECDAADEA1C36} = {E5060632-E9DF-44D4-BB82-B0C45A39BFF8}
+ {92CCFBCE-AF47-4F66-A900-FD29CDF284A2} = {E5060632-E9DF-44D4-BB82-B0C45A39BFF8}
+ {59B6ABC7-8492-46F2-8139-2551E5796D2A} = {E5060632-E9DF-44D4-BB82-B0C45A39BFF8}
+ {C5E82A68-9343-4BCB-AC3A-ED74172212FE} = {8C3DF571-BAC3-48C4-B46A-AC0E0EAA9871}
+ {A383E007-340B-489F-88DA-D44BCC7E37FA} = {8C3DF571-BAC3-48C4-B46A-AC0E0EAA9871}
+ {F94612B7-7F6F-4AEC-A895-6B524C1313AC} = {FB7A9794-06D2-42CF-939E-4626497B97BD}
+ {D95BC108-BB30-4C88-A381-0AC5F7371184} = {416CC55B-C2CD-486D-9BE9-5F0843317240}
+ {2F1541CB-8FA2-4AEF-9036-73B93FF8742C} = {C1134321-E1D5-477A-A580-AB3E5E833778}
+ {1A4E882C-6651-4F9D-A432-6FA26E17673F} = {93E7C9F3-68E9-4E4C-8810-4986AF7B2DC0}
+ {2B1CE080-588B-4824-AA84-7DBBB3FFCB37} = {4530BC52-D8D7-4022-B1E9-F327A0574835}
+ {36BEE9C9-8D1A-43AE-880F-EAF646750099} = {8C3DF571-BAC3-48C4-B46A-AC0E0EAA9871}
+ {0DAA2C37-FDEB-4E32-8514-E10432AC6DEF} = {93E7C9F3-68E9-4E4C-8810-4986AF7B2DC0}
+ {7EE853B4-B795-4036-97F1-42674DE7CD7D} = {C1134321-E1D5-477A-A580-AB3E5E833778}
+ {10A795AB-710F-4FDF-8F84-0058CC22C08F} = {32755A4F-2D52-44D0-88FB-3038007851EC}
+ {96EE3984-0ABB-49B0-9779-DF3709C9B13F} = {FB7A9794-06D2-42CF-939E-4626497B97BD}
+ {1A483DA8-A316-4D82-85CF-7AF2DE88FB68} = {64643A14-D2F9-4E42-84B0-719C01017539}
+ {16ADDA63-31EA-4096-94B1-380E7B8260E3} = {8C3DF571-BAC3-48C4-B46A-AC0E0EAA9871}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {80ED12A5-C899-459F-A181-ADCC9D680DE5}
diff --git a/aspnet-core/LINGYUN.MicroService.Workflow.sln b/aspnet-core/LINGYUN.MicroService.Workflow.sln
index 56113a53c..bd756b179 100644
--- a/aspnet-core/LINGYUN.MicroService.Workflow.sln
+++ b/aspnet-core/LINGYUN.MicroService.Workflow.sln
@@ -67,7 +67,9 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.ExceptionHandli
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Notifications.Common", "modules\common\LINGYUN.Abp.Notifications.Common\LINGYUN.Abp.Notifications.Common.csproj", "{6399C2FB-B063-4BB3-B605-88CE5303198B}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LINGYUN.Abp.Elsa.Notifications", "modules\elsa\LINGYUN.Abp.Elsa.Notifications\LINGYUN.Abp.Elsa.Notifications.csproj", "{D2F6105D-D667-46DB-8CDA-89B4D3F69067}"
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.Elsa.Notifications", "modules\elsa\LINGYUN.Abp.Elsa.Notifications\LINGYUN.Abp.Elsa.Notifications.csproj", "{D2F6105D-D667-46DB-8CDA-89B4D3F69067}"
+EndProject
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LINGYUN.Abp.BlobStoring.OssManagement", "modules\oss-management\LINGYUN.Abp.BlobStoring.OssManagement\LINGYUN.Abp.BlobStoring.OssManagement.csproj", "{CE550720-FA77-4FF3-B5F0-A2B7A1781E61}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -187,6 +189,10 @@ Global
{D2F6105D-D667-46DB-8CDA-89B4D3F69067}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D2F6105D-D667-46DB-8CDA-89B4D3F69067}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D2F6105D-D667-46DB-8CDA-89B4D3F69067}.Release|Any CPU.Build.0 = Release|Any CPU
+ {CE550720-FA77-4FF3-B5F0-A2B7A1781E61}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {CE550720-FA77-4FF3-B5F0-A2B7A1781E61}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {CE550720-FA77-4FF3-B5F0-A2B7A1781E61}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {CE550720-FA77-4FF3-B5F0-A2B7A1781E61}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -220,6 +226,7 @@ Global
{96EBCB1F-DB7B-40BA-B59E-82FC1AE13EA0} = {6DA78E72-BA55-4ECF-97DB-6258174D3E2A}
{6399C2FB-B063-4BB3-B605-88CE5303198B} = {6DA78E72-BA55-4ECF-97DB-6258174D3E2A}
{D2F6105D-D667-46DB-8CDA-89B4D3F69067} = {F1CCBEC7-ACAB-4DC5-909E-D8CC2E1B7EEC}
+ {CE550720-FA77-4FF3-B5F0-A2B7A1781E61} = {6DA78E72-BA55-4ECF-97DB-6258174D3E2A}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {6BB7A5DE-DA12-44DC-BC9B-0F6CA524346F}
diff --git a/aspnet-core/ef-update.ps1 b/aspnet-core/ef-update.ps1
new file mode 100644
index 000000000..4be3108f9
--- /dev/null
+++ b/aspnet-core/ef-update.ps1
@@ -0,0 +1,20 @@
+Set-Location ".\migrations\LY.MicroService.BackendAdmin.EntityFrameworkCore"
+dotnet ef database update
+
+Set-Location "..\LY.MicroService.Platform.EntityFrameworkCore"
+dotnet ef database update
+
+Set-Location "..\LY.MicroService.LocalizationManagement.EntityFrameworkCore"
+dotnet ef database update
+
+Set-Location "..\LY.MicroService.RealtimeMessage.EntityFrameworkCore"
+dotnet ef database update
+
+Set-Location "..\LY.MicroService.IdentityServer.EntityFrameworkCore"
+dotnet ef database update
+
+Set-Location "..\LY.MicroService.TaskManagement.EntityFrameworkCore"
+dotnet ef database update
+
+Set-Location "..\LY.MicroService.AuthServer.EntityFrameworkCore"
+dotnet ef database update
diff --git a/aspnet-core/migrations/LY.MicroService.AuthServer.EntityFrameworkCore/Migrations/20230515095522_FixUser.Designer.cs b/aspnet-core/migrations/LY.MicroService.AuthServer.EntityFrameworkCore/Migrations/20230515095522_FixUser.Designer.cs
new file mode 100644
index 000000000..43f402bf5
--- /dev/null
+++ b/aspnet-core/migrations/LY.MicroService.AuthServer.EntityFrameworkCore/Migrations/20230515095522_FixUser.Designer.cs
@@ -0,0 +1,1151 @@
+//
+using System;
+using LY.MicroService.AuthServer.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Infrastructure;
+using Microsoft.EntityFrameworkCore.Migrations;
+using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
+using Volo.Abp.EntityFrameworkCore;
+
+#nullable disable
+
+namespace LY.MicroService.AuthServer.EntityFrameworkCore.Migrations
+{
+ [DbContext(typeof(AuthServerMigrationsDbContext))]
+ [Migration("20230515095522_FixUser")]
+ partial class FixUser
+ {
+ ///
+ protected override void BuildTargetModel(ModelBuilder modelBuilder)
+ {
+#pragma warning disable 612, 618
+ modelBuilder
+ .HasAnnotation("_Abp_DatabaseProvider", EfCoreDatabaseProvider.MySql)
+ .HasAnnotation("ProductVersion", "7.0.2")
+ .HasAnnotation("Relational:MaxIdentifierLength", 64);
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityClaimType", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)");
+
+ b.Property("ConcurrencyStamp")
+ .IsConcurrencyToken()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnName("ConcurrencyStamp");
+
+ b.Property("Description")
+ .HasMaxLength(256)
+ .HasColumnType("varchar(256)");
+
+ b.Property("ExtraProperties")
+ .HasColumnType("longtext")
+ .HasColumnName("ExtraProperties");
+
+ b.Property("IsStatic")
+ .HasColumnType("tinyint(1)");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasMaxLength(256)
+ .HasColumnType("varchar(256)");
+
+ b.Property("Regex")
+ .HasMaxLength(512)
+ .HasColumnType("varchar(512)");
+
+ b.Property("RegexDescription")
+ .HasMaxLength(128)
+ .HasColumnType("varchar(128)");
+
+ b.Property("Required")
+ .HasColumnType("tinyint(1)");
+
+ b.Property("ValueType")
+ .HasColumnType("int");
+
+ b.HasKey("Id");
+
+ b.ToTable("AbpClaimTypes", (string)null);
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityLinkUser", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)");
+
+ b.Property("SourceTenantId")
+ .HasColumnType("char(36)");
+
+ b.Property("SourceUserId")
+ .HasColumnType("char(36)");
+
+ b.Property("TargetTenantId")
+ .HasColumnType("char(36)");
+
+ b.Property("TargetUserId")
+ .HasColumnType("char(36)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("SourceUserId", "SourceTenantId", "TargetUserId", "TargetTenantId")
+ .IsUnique();
+
+ b.ToTable("AbpLinkUsers", (string)null);
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityRole", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)");
+
+ b.Property("ConcurrencyStamp")
+ .IsConcurrencyToken()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnName("ConcurrencyStamp");
+
+ b.Property("EntityVersion")
+ .HasColumnType("int");
+
+ b.Property("ExtraProperties")
+ .HasColumnType("longtext")
+ .HasColumnName("ExtraProperties");
+
+ b.Property("IsDefault")
+ .HasColumnType("tinyint(1)")
+ .HasColumnName("IsDefault");
+
+ b.Property("IsPublic")
+ .HasColumnType("tinyint(1)")
+ .HasColumnName("IsPublic");
+
+ b.Property("IsStatic")
+ .HasColumnType("tinyint(1)")
+ .HasColumnName("IsStatic");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasMaxLength(256)
+ .HasColumnType("varchar(256)");
+
+ b.Property("NormalizedName")
+ .IsRequired()
+ .HasMaxLength(256)
+ .HasColumnType("varchar(256)");
+
+ b.Property("TenantId")
+ .HasColumnType("char(36)")
+ .HasColumnName("TenantId");
+
+ b.HasKey("Id");
+
+ b.HasIndex("NormalizedName");
+
+ b.ToTable("AbpRoles", (string)null);
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityRoleClaim", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("char(36)");
+
+ b.Property("ClaimType")
+ .IsRequired()
+ .HasMaxLength(256)
+ .HasColumnType("varchar(256)");
+
+ b.Property("ClaimValue")
+ .HasMaxLength(1024)
+ .HasColumnType("varchar(1024)");
+
+ b.Property("RoleId")
+ .HasColumnType("char(36)");
+
+ b.Property("TenantId")
+ .HasColumnType("char(36)")
+ .HasColumnName("TenantId");
+
+ b.HasKey("Id");
+
+ b.HasIndex("RoleId");
+
+ b.ToTable("AbpRoleClaims", (string)null);
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentitySecurityLog", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)");
+
+ b.Property("Action")
+ .HasMaxLength(96)
+ .HasColumnType("varchar(96)");
+
+ b.Property("ApplicationName")
+ .HasMaxLength(96)
+ .HasColumnType("varchar(96)");
+
+ b.Property("BrowserInfo")
+ .HasMaxLength(512)
+ .HasColumnType("varchar(512)");
+
+ b.Property("ClientId")
+ .HasMaxLength(64)
+ .HasColumnType("varchar(64)");
+
+ b.Property("ClientIpAddress")
+ .HasMaxLength(64)
+ .HasColumnType("varchar(64)");
+
+ b.Property("ConcurrencyStamp")
+ .IsConcurrencyToken()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnName("ConcurrencyStamp");
+
+ b.Property("CorrelationId")
+ .HasMaxLength(64)
+ .HasColumnType("varchar(64)");
+
+ b.Property("CreationTime")
+ .HasColumnType("datetime(6)");
+
+ b.Property("ExtraProperties")
+ .HasColumnType("longtext")
+ .HasColumnName("ExtraProperties");
+
+ b.Property("Identity")
+ .HasMaxLength(96)
+ .HasColumnType("varchar(96)");
+
+ b.Property("TenantId")
+ .HasColumnType("char(36)")
+ .HasColumnName("TenantId");
+
+ b.Property("TenantName")
+ .HasMaxLength(64)
+ .HasColumnType("varchar(64)");
+
+ b.Property("UserId")
+ .HasColumnType("char(36)");
+
+ b.Property("UserName")
+ .HasMaxLength(256)
+ .HasColumnType("varchar(256)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("TenantId", "Action");
+
+ b.HasIndex("TenantId", "ApplicationName");
+
+ b.HasIndex("TenantId", "Identity");
+
+ b.HasIndex("TenantId", "UserId");
+
+ b.ToTable("AbpSecurityLogs", (string)null);
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityUser", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)");
+
+ b.Property("AccessFailedCount")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int")
+ .HasDefaultValue(0)
+ .HasColumnName("AccessFailedCount");
+
+ b.Property("ConcurrencyStamp")
+ .IsConcurrencyToken()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnName("ConcurrencyStamp");
+
+ b.Property("CreationTime")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("CreationTime");
+
+ b.Property("CreatorId")
+ .HasColumnType("char(36)")
+ .HasColumnName("CreatorId");
+
+ b.Property("DeleterId")
+ .HasColumnType("char(36)")
+ .HasColumnName("DeleterId");
+
+ b.Property("DeletionTime")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("DeletionTime");
+
+ b.Property("Email")
+ .IsRequired()
+ .HasMaxLength(256)
+ .HasColumnType("varchar(256)")
+ .HasColumnName("Email");
+
+ b.Property("EmailConfirmed")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("tinyint(1)")
+ .HasDefaultValue(false)
+ .HasColumnName("EmailConfirmed");
+
+ b.Property("EntityVersion")
+ .HasColumnType("int");
+
+ b.Property("ExtraProperties")
+ .HasColumnType("longtext")
+ .HasColumnName("ExtraProperties");
+
+ b.Property("IsActive")
+ .HasColumnType("tinyint(1)")
+ .HasColumnName("IsActive");
+
+ b.Property("IsDeleted")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("tinyint(1)")
+ .HasDefaultValue(false)
+ .HasColumnName("IsDeleted");
+
+ b.Property("IsExternal")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("tinyint(1)")
+ .HasDefaultValue(false)
+ .HasColumnName("IsExternal");
+
+ b.Property("LastModificationTime")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("LastModificationTime");
+
+ b.Property("LastModifierId")
+ .HasColumnType("char(36)")
+ .HasColumnName("LastModifierId");
+
+ b.Property("LastPasswordChangeTime")
+ .HasColumnType("datetime(6)");
+
+ b.Property("LockoutEnabled")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("tinyint(1)")
+ .HasDefaultValue(false)
+ .HasColumnName("LockoutEnabled");
+
+ b.Property("LockoutEnd")
+ .HasColumnType("datetime(6)");
+
+ b.Property("Name")
+ .HasMaxLength(64)
+ .HasColumnType("varchar(64)")
+ .HasColumnName("Name");
+
+ b.Property("NormalizedEmail")
+ .IsRequired()
+ .HasMaxLength(256)
+ .HasColumnType("varchar(256)")
+ .HasColumnName("NormalizedEmail");
+
+ b.Property("NormalizedUserName")
+ .IsRequired()
+ .HasMaxLength(256)
+ .HasColumnType("varchar(256)")
+ .HasColumnName("NormalizedUserName");
+
+ b.Property("PasswordHash")
+ .HasMaxLength(256)
+ .HasColumnType("varchar(256)")
+ .HasColumnName("PasswordHash");
+
+ b.Property("PhoneNumber")
+ .HasMaxLength(16)
+ .HasColumnType("varchar(16)")
+ .HasColumnName("PhoneNumber");
+
+ b.Property("PhoneNumberConfirmed")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("tinyint(1)")
+ .HasDefaultValue(false)
+ .HasColumnName("PhoneNumberConfirmed");
+
+ b.Property("SecurityStamp")
+ .IsRequired()
+ .HasMaxLength(256)
+ .HasColumnType("varchar(256)")
+ .HasColumnName("SecurityStamp");
+
+ b.Property("ShouldChangePasswordOnNextLogin")
+ .HasColumnType("tinyint(1)");
+
+ b.Property("Surname")
+ .HasMaxLength(64)
+ .HasColumnType("varchar(64)")
+ .HasColumnName("Surname");
+
+ b.Property("TenantId")
+ .HasColumnType("char(36)")
+ .HasColumnName("TenantId");
+
+ b.Property("TwoFactorEnabled")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("tinyint(1)")
+ .HasDefaultValue(false)
+ .HasColumnName("TwoFactorEnabled");
+
+ b.Property("UserName")
+ .IsRequired()
+ .HasMaxLength(256)
+ .HasColumnType("varchar(256)")
+ .HasColumnName("UserName");
+
+ b.HasKey("Id");
+
+ b.HasIndex("Email");
+
+ b.HasIndex("NormalizedEmail");
+
+ b.HasIndex("NormalizedUserName");
+
+ b.HasIndex("UserName");
+
+ b.ToTable("AbpUsers", (string)null);
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityUserClaim", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("char(36)");
+
+ b.Property("ClaimType")
+ .IsRequired()
+ .HasMaxLength(256)
+ .HasColumnType("varchar(256)");
+
+ b.Property("ClaimValue")
+ .HasMaxLength(1024)
+ .HasColumnType("varchar(1024)");
+
+ b.Property("TenantId")
+ .HasColumnType("char(36)")
+ .HasColumnName("TenantId");
+
+ b.Property("UserId")
+ .HasColumnType("char(36)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("UserId");
+
+ b.ToTable("AbpUserClaims", (string)null);
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityUserDelegation", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)");
+
+ b.Property("EndTime")
+ .HasColumnType("datetime(6)");
+
+ b.Property("SourceUserId")
+ .HasColumnType("char(36)");
+
+ b.Property("StartTime")
+ .HasColumnType("datetime(6)");
+
+ b.Property("TargetUserId")
+ .HasColumnType("char(36)");
+
+ b.Property("TenantId")
+ .HasColumnType("char(36)")
+ .HasColumnName("TenantId");
+
+ b.HasKey("Id");
+
+ b.ToTable("AbpUserDelegations", (string)null);
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityUserLogin", b =>
+ {
+ b.Property("UserId")
+ .HasColumnType("char(36)");
+
+ b.Property("LoginProvider")
+ .HasMaxLength(64)
+ .HasColumnType("varchar(64)");
+
+ b.Property("ProviderDisplayName")
+ .HasMaxLength(128)
+ .HasColumnType("varchar(128)");
+
+ b.Property("ProviderKey")
+ .IsRequired()
+ .HasMaxLength(196)
+ .HasColumnType("varchar(196)");
+
+ b.Property("TenantId")
+ .HasColumnType("char(36)")
+ .HasColumnName("TenantId");
+
+ b.HasKey("UserId", "LoginProvider");
+
+ b.HasIndex("LoginProvider", "ProviderKey");
+
+ b.ToTable("AbpUserLogins", (string)null);
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityUserOrganizationUnit", b =>
+ {
+ b.Property("OrganizationUnitId")
+ .HasColumnType("char(36)");
+
+ b.Property("UserId")
+ .HasColumnType("char(36)");
+
+ b.Property("CreationTime")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("CreationTime");
+
+ b.Property("CreatorId")
+ .HasColumnType("char(36)")
+ .HasColumnName("CreatorId");
+
+ b.Property("TenantId")
+ .HasColumnType("char(36)")
+ .HasColumnName("TenantId");
+
+ b.HasKey("OrganizationUnitId", "UserId");
+
+ b.HasIndex("UserId", "OrganizationUnitId");
+
+ b.ToTable("AbpUserOrganizationUnits", (string)null);
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityUserRole", b =>
+ {
+ b.Property("UserId")
+ .HasColumnType("char(36)");
+
+ b.Property("RoleId")
+ .HasColumnType("char(36)");
+
+ b.Property("TenantId")
+ .HasColumnType("char(36)")
+ .HasColumnName("TenantId");
+
+ b.HasKey("UserId", "RoleId");
+
+ b.HasIndex("RoleId", "UserId");
+
+ b.ToTable("AbpUserRoles", (string)null);
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityUserToken", b =>
+ {
+ b.Property("UserId")
+ .HasColumnType("char(36)");
+
+ b.Property("LoginProvider")
+ .HasMaxLength(64)
+ .HasColumnType("varchar(64)");
+
+ b.Property("Name")
+ .HasMaxLength(128)
+ .HasColumnType("varchar(128)");
+
+ b.Property("TenantId")
+ .HasColumnType("char(36)")
+ .HasColumnName("TenantId");
+
+ b.Property("Value")
+ .HasColumnType("longtext");
+
+ b.HasKey("UserId", "LoginProvider", "Name");
+
+ b.ToTable("AbpUserTokens", (string)null);
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.OrganizationUnit", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)");
+
+ b.Property("Code")
+ .IsRequired()
+ .HasMaxLength(95)
+ .HasColumnType("varchar(95)")
+ .HasColumnName("Code");
+
+ b.Property("ConcurrencyStamp")
+ .IsConcurrencyToken()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnName("ConcurrencyStamp");
+
+ b.Property("CreationTime")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("CreationTime");
+
+ b.Property("CreatorId")
+ .HasColumnType("char(36)")
+ .HasColumnName("CreatorId");
+
+ b.Property("DeleterId")
+ .HasColumnType("char(36)")
+ .HasColumnName("DeleterId");
+
+ b.Property("DeletionTime")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("DeletionTime");
+
+ b.Property("DisplayName")
+ .IsRequired()
+ .HasMaxLength(128)
+ .HasColumnType("varchar(128)")
+ .HasColumnName("DisplayName");
+
+ b.Property("EntityVersion")
+ .HasColumnType("int");
+
+ b.Property("ExtraProperties")
+ .HasColumnType("longtext")
+ .HasColumnName("ExtraProperties");
+
+ b.Property("IsDeleted")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("tinyint(1)")
+ .HasDefaultValue(false)
+ .HasColumnName("IsDeleted");
+
+ b.Property("LastModificationTime")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("LastModificationTime");
+
+ b.Property("LastModifierId")
+ .HasColumnType("char(36)")
+ .HasColumnName("LastModifierId");
+
+ b.Property("ParentId")
+ .HasColumnType("char(36)");
+
+ b.Property("TenantId")
+ .HasColumnType("char(36)")
+ .HasColumnName("TenantId");
+
+ b.HasKey("Id");
+
+ b.HasIndex("Code");
+
+ b.HasIndex("ParentId");
+
+ b.ToTable("AbpOrganizationUnits", (string)null);
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.OrganizationUnitRole", b =>
+ {
+ b.Property("OrganizationUnitId")
+ .HasColumnType("char(36)");
+
+ b.Property("RoleId")
+ .HasColumnType("char(36)");
+
+ b.Property("CreationTime")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("CreationTime");
+
+ b.Property("CreatorId")
+ .HasColumnType("char(36)")
+ .HasColumnName("CreatorId");
+
+ b.Property("TenantId")
+ .HasColumnType("char(36)")
+ .HasColumnName("TenantId");
+
+ b.HasKey("OrganizationUnitId", "RoleId");
+
+ b.HasIndex("RoleId", "OrganizationUnitId");
+
+ b.ToTable("AbpOrganizationUnitRoles", (string)null);
+ });
+
+ modelBuilder.Entity("Volo.Abp.OpenIddict.Applications.OpenIddictApplication", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)");
+
+ b.Property("ClientId")
+ .HasMaxLength(100)
+ .HasColumnType("varchar(100)");
+
+ b.Property("ClientSecret")
+ .HasColumnType("longtext");
+
+ b.Property("ClientUri")
+ .HasColumnType("longtext");
+
+ b.Property("ConcurrencyStamp")
+ .IsConcurrencyToken()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnName("ConcurrencyStamp");
+
+ b.Property("ConsentType")
+ .HasMaxLength(50)
+ .HasColumnType("varchar(50)");
+
+ b.Property("CreationTime")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("CreationTime");
+
+ b.Property("CreatorId")
+ .HasColumnType("char(36)")
+ .HasColumnName("CreatorId");
+
+ b.Property("DeleterId")
+ .HasColumnType("char(36)")
+ .HasColumnName("DeleterId");
+
+ b.Property("DeletionTime")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("DeletionTime");
+
+ b.Property("DisplayName")
+ .HasColumnType("longtext");
+
+ b.Property("DisplayNames")
+ .HasColumnType("longtext");
+
+ b.Property("ExtraProperties")
+ .HasColumnType("longtext")
+ .HasColumnName("ExtraProperties");
+
+ b.Property("IsDeleted")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("tinyint(1)")
+ .HasDefaultValue(false)
+ .HasColumnName("IsDeleted");
+
+ b.Property("LastModificationTime")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("LastModificationTime");
+
+ b.Property("LastModifierId")
+ .HasColumnType("char(36)")
+ .HasColumnName("LastModifierId");
+
+ b.Property("LogoUri")
+ .HasColumnType("longtext");
+
+ b.Property("Permissions")
+ .HasColumnType("longtext");
+
+ b.Property("PostLogoutRedirectUris")
+ .HasColumnType("longtext");
+
+ b.Property("Properties")
+ .HasColumnType("longtext");
+
+ b.Property("RedirectUris")
+ .HasColumnType("longtext");
+
+ b.Property("Requirements")
+ .HasColumnType("longtext");
+
+ b.Property("Type")
+ .HasMaxLength(50)
+ .HasColumnType("varchar(50)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("ClientId");
+
+ b.ToTable("OpenIddictApplications", (string)null);
+ });
+
+ modelBuilder.Entity("Volo.Abp.OpenIddict.Authorizations.OpenIddictAuthorization", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)");
+
+ b.Property("ApplicationId")
+ .HasColumnType("char(36)");
+
+ b.Property("ConcurrencyStamp")
+ .IsConcurrencyToken()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnName("ConcurrencyStamp");
+
+ b.Property("CreationDate")
+ .HasColumnType("datetime(6)");
+
+ b.Property("CreationTime")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("CreationTime");
+
+ b.Property("CreatorId")
+ .HasColumnType("char(36)")
+ .HasColumnName("CreatorId");
+
+ b.Property("DeleterId")
+ .HasColumnType("char(36)")
+ .HasColumnName("DeleterId");
+
+ b.Property("DeletionTime")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("DeletionTime");
+
+ b.Property("ExtraProperties")
+ .HasColumnType("longtext")
+ .HasColumnName("ExtraProperties");
+
+ b.Property("IsDeleted")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("tinyint(1)")
+ .HasDefaultValue(false)
+ .HasColumnName("IsDeleted");
+
+ b.Property("LastModificationTime")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("LastModificationTime");
+
+ b.Property("LastModifierId")
+ .HasColumnType("char(36)")
+ .HasColumnName("LastModifierId");
+
+ b.Property("Properties")
+ .HasColumnType("longtext");
+
+ b.Property("Scopes")
+ .HasColumnType("longtext");
+
+ b.Property("Status")
+ .HasMaxLength(50)
+ .HasColumnType("varchar(50)");
+
+ b.Property("Subject")
+ .HasMaxLength(400)
+ .HasColumnType("varchar(400)");
+
+ b.Property("Type")
+ .HasMaxLength(50)
+ .HasColumnType("varchar(50)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("ApplicationId", "Status", "Subject", "Type");
+
+ b.ToTable("OpenIddictAuthorizations", (string)null);
+ });
+
+ modelBuilder.Entity("Volo.Abp.OpenIddict.Scopes.OpenIddictScope", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)");
+
+ b.Property("ConcurrencyStamp")
+ .IsConcurrencyToken()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnName("ConcurrencyStamp");
+
+ b.Property("CreationTime")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("CreationTime");
+
+ b.Property("CreatorId")
+ .HasColumnType("char(36)")
+ .HasColumnName("CreatorId");
+
+ b.Property("DeleterId")
+ .HasColumnType("char(36)")
+ .HasColumnName("DeleterId");
+
+ b.Property("DeletionTime")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("DeletionTime");
+
+ b.Property("Description")
+ .HasColumnType("longtext");
+
+ b.Property("Descriptions")
+ .HasColumnType("longtext");
+
+ b.Property("DisplayName")
+ .HasColumnType("longtext");
+
+ b.Property("DisplayNames")
+ .HasColumnType("longtext");
+
+ b.Property("ExtraProperties")
+ .HasColumnType("longtext")
+ .HasColumnName("ExtraProperties");
+
+ b.Property("IsDeleted")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("tinyint(1)")
+ .HasDefaultValue(false)
+ .HasColumnName("IsDeleted");
+
+ b.Property("LastModificationTime")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("LastModificationTime");
+
+ b.Property("LastModifierId")
+ .HasColumnType("char(36)")
+ .HasColumnName("LastModifierId");
+
+ b.Property("Name")
+ .HasMaxLength(200)
+ .HasColumnType("varchar(200)");
+
+ b.Property("Properties")
+ .HasColumnType("longtext");
+
+ b.Property("Resources")
+ .HasColumnType("longtext");
+
+ b.HasKey("Id");
+
+ b.HasIndex("Name");
+
+ b.ToTable("OpenIddictScopes", (string)null);
+ });
+
+ modelBuilder.Entity("Volo.Abp.OpenIddict.Tokens.OpenIddictToken", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)");
+
+ b.Property("ApplicationId")
+ .HasColumnType("char(36)");
+
+ b.Property("AuthorizationId")
+ .HasColumnType("char(36)");
+
+ b.Property("ConcurrencyStamp")
+ .IsConcurrencyToken()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnName("ConcurrencyStamp");
+
+ b.Property("CreationDate")
+ .HasColumnType("datetime(6)");
+
+ b.Property("CreationTime")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("CreationTime");
+
+ b.Property("CreatorId")
+ .HasColumnType("char(36)")
+ .HasColumnName("CreatorId");
+
+ b.Property("DeleterId")
+ .HasColumnType("char(36)")
+ .HasColumnName("DeleterId");
+
+ b.Property("DeletionTime")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("DeletionTime");
+
+ b.Property("ExpirationDate")
+ .HasColumnType("datetime(6)");
+
+ b.Property("ExtraProperties")
+ .HasColumnType("longtext")
+ .HasColumnName("ExtraProperties");
+
+ b.Property("IsDeleted")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("tinyint(1)")
+ .HasDefaultValue(false)
+ .HasColumnName("IsDeleted");
+
+ b.Property("LastModificationTime")
+ .HasColumnType("datetime(6)")
+ .HasColumnName("LastModificationTime");
+
+ b.Property("LastModifierId")
+ .HasColumnType("char(36)")
+ .HasColumnName("LastModifierId");
+
+ b.Property("Payload")
+ .HasColumnType("longtext");
+
+ b.Property("Properties")
+ .HasColumnType("longtext");
+
+ b.Property("RedemptionDate")
+ .HasColumnType("datetime(6)");
+
+ b.Property("ReferenceId")
+ .HasMaxLength(100)
+ .HasColumnType("varchar(100)");
+
+ b.Property("Status")
+ .HasMaxLength(50)
+ .HasColumnType("varchar(50)");
+
+ b.Property("Subject")
+ .HasMaxLength(400)
+ .HasColumnType("varchar(400)");
+
+ b.Property("Type")
+ .HasMaxLength(50)
+ .HasColumnType("varchar(50)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("AuthorizationId");
+
+ b.HasIndex("ReferenceId");
+
+ b.HasIndex("ApplicationId", "Status", "Subject", "Type");
+
+ b.ToTable("OpenIddictTokens", (string)null);
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityRoleClaim", b =>
+ {
+ b.HasOne("Volo.Abp.Identity.IdentityRole", null)
+ .WithMany("Claims")
+ .HasForeignKey("RoleId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityUserClaim", b =>
+ {
+ b.HasOne("Volo.Abp.Identity.IdentityUser", null)
+ .WithMany("Claims")
+ .HasForeignKey("UserId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityUserLogin", b =>
+ {
+ b.HasOne("Volo.Abp.Identity.IdentityUser", null)
+ .WithMany("Logins")
+ .HasForeignKey("UserId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityUserOrganizationUnit", b =>
+ {
+ b.HasOne("Volo.Abp.Identity.OrganizationUnit", null)
+ .WithMany()
+ .HasForeignKey("OrganizationUnitId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("Volo.Abp.Identity.IdentityUser", null)
+ .WithMany("OrganizationUnits")
+ .HasForeignKey("UserId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityUserRole", b =>
+ {
+ b.HasOne("Volo.Abp.Identity.IdentityRole", null)
+ .WithMany()
+ .HasForeignKey("RoleId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("Volo.Abp.Identity.IdentityUser", null)
+ .WithMany("Roles")
+ .HasForeignKey("UserId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityUserToken", b =>
+ {
+ b.HasOne("Volo.Abp.Identity.IdentityUser", null)
+ .WithMany("Tokens")
+ .HasForeignKey("UserId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.OrganizationUnit", b =>
+ {
+ b.HasOne("Volo.Abp.Identity.OrganizationUnit", null)
+ .WithMany()
+ .HasForeignKey("ParentId");
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.OrganizationUnitRole", b =>
+ {
+ b.HasOne("Volo.Abp.Identity.OrganizationUnit", null)
+ .WithMany("Roles")
+ .HasForeignKey("OrganizationUnitId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("Volo.Abp.Identity.IdentityRole", null)
+ .WithMany()
+ .HasForeignKey("RoleId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+ });
+
+ modelBuilder.Entity("Volo.Abp.OpenIddict.Authorizations.OpenIddictAuthorization", b =>
+ {
+ b.HasOne("Volo.Abp.OpenIddict.Applications.OpenIddictApplication", null)
+ .WithMany()
+ .HasForeignKey("ApplicationId");
+ });
+
+ modelBuilder.Entity("Volo.Abp.OpenIddict.Tokens.OpenIddictToken", b =>
+ {
+ b.HasOne("Volo.Abp.OpenIddict.Applications.OpenIddictApplication", null)
+ .WithMany()
+ .HasForeignKey("ApplicationId");
+
+ b.HasOne("Volo.Abp.OpenIddict.Authorizations.OpenIddictAuthorization", null)
+ .WithMany()
+ .HasForeignKey("AuthorizationId");
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityRole", b =>
+ {
+ b.Navigation("Claims");
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityUser", b =>
+ {
+ b.Navigation("Claims");
+
+ b.Navigation("Logins");
+
+ b.Navigation("OrganizationUnits");
+
+ b.Navigation("Roles");
+
+ b.Navigation("Tokens");
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.OrganizationUnit", b =>
+ {
+ b.Navigation("Roles");
+ });
+#pragma warning restore 612, 618
+ }
+ }
+}
diff --git a/aspnet-core/migrations/LY.MicroService.AuthServer.EntityFrameworkCore/Migrations/20230515095522_FixUser.cs b/aspnet-core/migrations/LY.MicroService.AuthServer.EntityFrameworkCore/Migrations/20230515095522_FixUser.cs
new file mode 100644
index 000000000..8e1675e90
--- /dev/null
+++ b/aspnet-core/migrations/LY.MicroService.AuthServer.EntityFrameworkCore/Migrations/20230515095522_FixUser.cs
@@ -0,0 +1,60 @@
+using System;
+using Microsoft.EntityFrameworkCore.Migrations;
+
+#nullable disable
+
+namespace LY.MicroService.AuthServer.EntityFrameworkCore.Migrations
+{
+ ///
+ public partial class FixUser : Migration
+ {
+ ///
+ protected override void Up(MigrationBuilder migrationBuilder)
+ {
+ migrationBuilder.AddColumn(
+ name: "LastPasswordChangeTime",
+ table: "AbpUsers",
+ type: "datetime(6)",
+ nullable: true);
+
+ migrationBuilder.AddColumn(
+ name: "ShouldChangePasswordOnNextLogin",
+ table: "AbpUsers",
+ type: "tinyint(1)",
+ nullable: false,
+ defaultValue: false);
+
+ migrationBuilder.CreateTable(
+ name: "AbpUserDelegations",
+ columns: table => new
+ {
+ Id = table.Column(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
+ TenantId = table.Column(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
+ SourceUserId = table.Column(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
+ TargetUserId = table.Column(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
+ StartTime = table.Column(type: "datetime(6)", nullable: false),
+ EndTime = table.Column(type: "datetime(6)", nullable: false)
+ },
+ constraints: table =>
+ {
+ table.PrimaryKey("PK_AbpUserDelegations", x => x.Id);
+ })
+ .Annotation("MySql:CharSet", "utf8mb4");
+ }
+
+ ///
+ protected override void Down(MigrationBuilder migrationBuilder)
+ {
+ migrationBuilder.DropTable(
+ name: "AbpUserDelegations");
+
+ migrationBuilder.DropColumn(
+ name: "LastPasswordChangeTime",
+ table: "AbpUsers");
+
+ migrationBuilder.DropColumn(
+ name: "ShouldChangePasswordOnNextLogin",
+ table: "AbpUsers");
+ }
+ }
+}
diff --git a/aspnet-core/migrations/LY.MicroService.AuthServer.EntityFrameworkCore/Migrations/AuthServerMigrationsDbContextModelSnapshot.cs b/aspnet-core/migrations/LY.MicroService.AuthServer.EntityFrameworkCore/Migrations/AuthServerMigrationsDbContextModelSnapshot.cs
index 61be4e4da..ea0f40f81 100644
--- a/aspnet-core/migrations/LY.MicroService.AuthServer.EntityFrameworkCore/Migrations/AuthServerMigrationsDbContextModelSnapshot.cs
+++ b/aspnet-core/migrations/LY.MicroService.AuthServer.EntityFrameworkCore/Migrations/AuthServerMigrationsDbContextModelSnapshot.cs
@@ -326,6 +326,9 @@ namespace LY.MicroService.AuthServer.DbMigrator.Migrations
.HasColumnType("char(36)")
.HasColumnName("LastModifierId");
+ b.Property("LastPasswordChangeTime")
+ .HasColumnType("datetime(6)");
+
b.Property("LockoutEnabled")
.ValueGeneratedOnAdd()
.HasColumnType("tinyint(1)")
@@ -374,6 +377,9 @@ namespace LY.MicroService.AuthServer.DbMigrator.Migrations
.HasColumnType("varchar(256)")
.HasColumnName("SecurityStamp");
+ b.Property("ShouldChangePasswordOnNextLogin")
+ .HasColumnType("tinyint(1)");
+
b.Property("Surname")
.HasMaxLength(64)
.HasColumnType("varchar(64)")
@@ -436,6 +442,33 @@ namespace LY.MicroService.AuthServer.DbMigrator.Migrations
b.ToTable("AbpUserClaims", (string)null);
});
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityUserDelegation", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)");
+
+ b.Property("EndTime")
+ .HasColumnType("datetime(6)");
+
+ b.Property("SourceUserId")
+ .HasColumnType("char(36)");
+
+ b.Property("StartTime")
+ .HasColumnType("datetime(6)");
+
+ b.Property("TargetUserId")
+ .HasColumnType("char(36)");
+
+ b.Property("TenantId")
+ .HasColumnType("char(36)")
+ .HasColumnName("TenantId");
+
+ b.HasKey("Id");
+
+ b.ToTable("AbpUserDelegations", (string)null);
+ });
+
modelBuilder.Entity("Volo.Abp.Identity.IdentityUserLogin", b =>
{
b.Property("UserId")
diff --git a/aspnet-core/migrations/LY.MicroService.IdentityServer.EntityFrameworkCore/Migrations/20230515095947_FixUser.Designer.cs b/aspnet-core/migrations/LY.MicroService.IdentityServer.EntityFrameworkCore/Migrations/20230515095947_FixUser.Designer.cs
new file mode 100644
index 000000000..69ba732f4
--- /dev/null
+++ b/aspnet-core/migrations/LY.MicroService.IdentityServer.EntityFrameworkCore/Migrations/20230515095947_FixUser.Designer.cs
@@ -0,0 +1,1819 @@
+//
+using System;
+using LY.MicroService.IdentityServer.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Infrastructure;
+using Microsoft.EntityFrameworkCore.Migrations;
+using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
+using Volo.Abp.EntityFrameworkCore;
+
+#nullable disable
+
+namespace LY.MicroService.IdentityServer.EntityFrameworkCore.Migrations
+{
+ [DbContext(typeof(IdentityServerMigrationsDbContext))]
+ [Migration("20230515095947_FixUser")]
+ partial class FixUser
+ {
+ ///
+ protected override void BuildTargetModel(ModelBuilder modelBuilder)
+ {
+#pragma warning disable 612, 618
+ modelBuilder
+ .HasAnnotation("_Abp_DatabaseProvider", EfCoreDatabaseProvider.MySql)
+ .HasAnnotation("ProductVersion", "7.0.2")
+ .HasAnnotation("Relational:MaxIdentifierLength", 64);
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityClaimType", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)");
+
+ b.Property("ConcurrencyStamp")
+ .IsConcurrencyToken()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnName("ConcurrencyStamp");
+
+ b.Property("Description")
+ .HasMaxLength(256)
+ .HasColumnType("varchar(256)");
+
+ b.Property("ExtraProperties")
+ .HasColumnType("longtext")
+ .HasColumnName("ExtraProperties");
+
+ b.Property("IsStatic")
+ .HasColumnType("tinyint(1)");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasMaxLength(256)
+ .HasColumnType("varchar(256)");
+
+ b.Property("Regex")
+ .HasMaxLength(512)
+ .HasColumnType("varchar(512)");
+
+ b.Property("RegexDescription")
+ .HasMaxLength(128)
+ .HasColumnType("varchar(128)");
+
+ b.Property("Required")
+ .HasColumnType("tinyint(1)");
+
+ b.Property("ValueType")
+ .HasColumnType("int");
+
+ b.HasKey("Id");
+
+ b.ToTable("AbpClaimTypes", (string)null);
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityLinkUser", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)");
+
+ b.Property("SourceTenantId")
+ .HasColumnType("char(36)");
+
+ b.Property("SourceUserId")
+ .HasColumnType("char(36)");
+
+ b.Property("TargetTenantId")
+ .HasColumnType("char(36)");
+
+ b.Property("TargetUserId")
+ .HasColumnType("char(36)");
+
+ b.HasKey("Id");
+
+ b.HasIndex("SourceUserId", "SourceTenantId", "TargetUserId", "TargetTenantId")
+ .IsUnique();
+
+ b.ToTable("AbpLinkUsers", (string)null);
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityRole", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)");
+
+ b.Property("ConcurrencyStamp")
+ .IsConcurrencyToken()
+ .HasMaxLength(40)
+ .HasColumnType("varchar(40)")
+ .HasColumnName("ConcurrencyStamp");
+
+ b.Property("EntityVersion")
+ .HasColumnType("int");
+
+ b.Property("ExtraProperties")
+ .HasColumnType("longtext")
+ .HasColumnName("ExtraProperties");
+
+ b.Property("IsDefault")
+ .HasColumnType("tinyint(1)")
+ .HasColumnName("IsDefault");
+
+ b.Property("IsPublic")
+ .HasColumnType("tinyint(1)")
+ .HasColumnName("IsPublic");
+
+ b.Property("IsStatic")
+ .HasColumnType("tinyint(1)")
+ .HasColumnName("IsStatic");
+
+ b.Property("Name")
+ .IsRequired()
+ .HasMaxLength(256)
+ .HasColumnType("varchar(256)");
+
+ b.Property("NormalizedName")
+ .IsRequired()
+ .HasMaxLength(256)
+ .HasColumnType("varchar(256)");
+
+ b.Property("TenantId")
+ .HasColumnType("char(36)")
+ .HasColumnName("TenantId");
+
+ b.HasKey("Id");
+
+ b.HasIndex("NormalizedName");
+
+ b.ToTable("AbpRoles", (string)null);
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentityRoleClaim", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("char(36)");
+
+ b.Property("ClaimType")
+ .IsRequired()
+ .HasMaxLength(256)
+ .HasColumnType("varchar(256)");
+
+ b.Property("ClaimValue")
+ .HasMaxLength(1024)
+ .HasColumnType("varchar(1024)");
+
+ b.Property("RoleId")
+ .HasColumnType("char(36)");
+
+ b.Property("TenantId")
+ .HasColumnType("char(36)")
+ .HasColumnName("TenantId");
+
+ b.HasKey("Id");
+
+ b.HasIndex("RoleId");
+
+ b.ToTable("AbpRoleClaims", (string)null);
+ });
+
+ modelBuilder.Entity("Volo.Abp.Identity.IdentitySecurityLog", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("char(36)");
+
+ b.Property("Action")
+ .HasMaxLength(96)
+ .HasColumnType("varchar(96)");
+
+ b.Property