Browse Source

upgrade: upgrade abp framework to 7.3.2

pull/858/head 7.3.2
colin 2 years ago
parent
commit
78e169acc5
  1. 4
      .github/workflows/release.yml
  2. 7
      apps/vue/src/api/sys/model/userModel.ts
  3. 5
      apps/vue/src/api/sys/user.ts
  4. 2
      apps/vue/src/locales/lang/en/sys.ts
  5. 2
      apps/vue/src/locales/lang/zh-CN/sys.ts
  6. 24
      apps/vue/src/store/modules/user.ts
  7. 4
      apps/vue/src/utils/http/axios/checkStatus.ts
  8. 22
      apps/vue/src/views/oss-management/objects/components/FolderTree.vue
  9. 1
      apps/vue/src/views/oss-management/objects/datas/typing.ts
  10. 2
      apps/vue/src/views/sys/login/Login.vue
  11. 7
      apps/vue/src/views/sys/login/LoginForm.vue
  12. 1
      apps/vue/src/views/sys/login/LoginFormTitle.vue
  13. 154
      apps/vue/src/views/sys/login/PortalForm.vue
  14. 1
      apps/vue/src/views/sys/login/useLogin.ts
  15. 8
      aspnet-core/Directory.Build.props
  16. 2
      aspnet-core/common.props
  17. 3
      aspnet-core/modules/common/LINGYUN.Abp.EventBus.CAP/LINGYUN.Abp.EventBus.CAP.xml
  18. 8
      aspnet-core/modules/common/LINGYUN.Abp.EventBus.CAP/LINGYUN/Abp/EventBus/CAP/CAPDistributedEventBus.cs
  19. 1
      aspnet-core/modules/common/LINGYUN.Abp.Notifications.Core/LINGYUN.Abp.Notifications.Core.csproj
  20. 4
      aspnet-core/modules/common/LINGYUN.Abp.Notifications.Core/LINGYUN/Abp/Notifications/AbpNotificationsCoreModule.cs
  21. 1
      aspnet-core/modules/notifications/LINGYUN.Abp.Notifications.Application.Contracts/LINGYUN/Abp/Notifications/Dto/UserNotificationDto.cs
  22. 4
      aspnet-core/modules/openIddict/LINGYUN.Abp.OpenIddict.LinkUser/LINGYUN/Abp/OpenIddict/LinkUser/LinkUserTokenExtensionGrant.cs
  23. 4
      aspnet-core/modules/openIddict/LINGYUN.Abp.OpenIddict.Sms/LINGYUN/Abp/OpenIddict/Sms/SmsTokenExtensionGrant.cs
  24. 4
      aspnet-core/modules/openIddict/LINGYUN.Abp.OpenIddict.WeChat/LINGYUN/Abp/OpenIddict/WeChat/WeChatTokenExtensionGrant.cs
  25. 1
      aspnet-core/modules/platform/LINGYUN.Platform.Domain.Shared/LINGYUN.Platform.Domain.Shared.csproj
  26. 5
      aspnet-core/modules/platform/LINGYUN.Platform.Domain.Shared/LINGYUN/Platform/PlatformDomainSharedModule.cs
  27. 1
      aspnet-core/modules/platform/LINGYUN.Platform.Settings.VueVbenAdmin/LINGYUN.Platform.Settings.VueVbenAdmin.csproj
  28. 4
      aspnet-core/modules/platform/LINGYUN.Platform.Settings.VueVbenAdmin/LINGYUN/Platform/Settings/VueVbenAdmin/PlatformSettingsVueVbenAdminModule.cs
  29. 1
      aspnet-core/modules/task-management/LINGYUN.Abp.BackgroundTasks.Abstractions/LINGYUN.Abp.BackgroundTasks.Abstractions.csproj
  30. 5
      aspnet-core/modules/task-management/LINGYUN.Abp.BackgroundTasks.Abstractions/LINGYUN/Abp/BackgroundTasks/AbpBackgroundTasksAbstractionsModule.cs
  31. 1
      aspnet-core/modules/text-templating/LINGYUN.Abp.TextTemplating.Domain.Shared/LINGYUN.Abp.TextTemplating.Domain.Shared.csproj
  32. 4
      aspnet-core/modules/text-templating/LINGYUN.Abp.TextTemplating.Domain.Shared/LINGYUN/Abp/TextTemplating/AbpTextTemplatingDomainSharedModule.cs
  33. 2
      aspnet-core/services/LY.MicroService.AuthServer/AuthServerModule.Configure.cs
  34. 10
      gateways/Directory.Build.props
  35. 2
      gateways/common.props
  36. 2
      gateways/internal/LINGYUN.MicroService.Internal.ApiGateway/src/LINGYUN.MicroService.Internal.ApiGateway/Dockerfile

4
.github/workflows/release.yml

@ -2,7 +2,7 @@ name: "Tagged Release"
on:
push:
branches: [ rel-7.2.2 ]
branches: [ rel-7.3.2 ]
jobs:
tagged-release:
@ -14,4 +14,4 @@ jobs:
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
prerelease: false
automatic_release_tag: "7.2.2"
automatic_release_tag: "7.3.2"

7
apps/vue/src/api/sys/model/userModel.ts

@ -6,6 +6,7 @@ export interface LoginParams {
password: string;
twoFactorProvider?: string;
twoFactorCode?: string;
enterpriseId?: string;
}
export interface LoginByPhoneParams {
@ -32,6 +33,12 @@ export interface LoginResultModel {
refresh_token: string;
}
export interface PortalLoginModel {
id: string;
name: string;
logo?: string;
}
/**
* @description: Get user information return value
*/

5
apps/vue/src/api/sys/user.ts

@ -25,14 +25,15 @@ enum Api {
/**
* @description: user login api
*/
export function loginApi(params: LoginParams, mode: ErrorMessageMode = 'modal') {
export function loginApi(params: LoginParams, mode: ErrorMessageMode = 'modal', isPortalLogin: boolean = false) {
const setting = useGlobSetting();
const tokenParams = {
client_id: setting.clientId,
client_secret: setting.clientSecret,
grant_type: 'password',
grant_type: isPortalLogin ? 'portal' : 'password',
username: params.username,
password: params.password,
enterpriseId: params.enterpriseId,
scope: 'openid email address phone profile offline_access lingyun-abp-application',
TwoFactorProvider: params.twoFactorProvider,
TwoFactorCode: params.twoFactorCode,

2
apps/vue/src/locales/lang/en/sys.ts

@ -66,12 +66,14 @@ export default {
login: {
backSignIn: 'Back sign in',
mobileSignInFormTitle: 'Mobile sign in',
portalSignInFormTitle: 'Portal sign in',
qrSignInFormTitle: 'Qr code sign in',
signInFormTitle: 'Sign in',
signUpFormTitle: 'Sign up',
forgetFormTitle: 'Reset password',
twoFactorFormTitle: 'Two factor',
loginToPortalTitle: 'Login To Portal',
signInTitle: 'Backstage management system',
signInDesc: 'Enter your personal details and get started!',
policy: 'I agree to the xxx Privacy Policy',

2
apps/vue/src/locales/lang/zh-CN/sys.ts

@ -62,11 +62,13 @@ export default {
backSignIn: '返回',
signInFormTitle: '登录',
mobileSignInFormTitle: '手机登录',
portalSignInFormTitle: '平台登录',
qrSignInFormTitle: '二维码登录',
signUpFormTitle: '注册',
forgetFormTitle: '重置密码',
twoFactorFormTitle: '二次认证',
loginToPortalTitle: '登陆到门户',
signInTitle: '开箱即用的中后台管理系统',
signInDesc: '输入您的个人详细信息开始使用!',
policy: '我同意xxx隐私政策',

24
apps/vue/src/store/modules/user.ts

@ -99,16 +99,18 @@ export const useUserStore = defineStore({
async login(
params: LoginParams & {
goHome?: boolean;
isPortalLogin?: boolean;
mode?: ErrorMessageMode;
loginCallback?: () => Promise<void>;
},
): Promise<GetUserInfoModel | null> {
try {
const { goHome = true, mode, ...loginParams } = params;
const data = await loginApi(loginParams, mode);
const { goHome = true, mode, isPortalLogin, loginCallback, ...loginParams } = params;
const data = await loginApi(loginParams, mode, isPortalLogin);
const { access_token } = data;
this.setSso(false);
this.setToken(access_token);
return this.afterLoginAction(goHome);
return this.afterLoginAction(goHome, loginCallback);
} catch (error) {
return Promise.reject(error);
}
@ -118,15 +120,16 @@ export const useUserStore = defineStore({
params: LoginByPhoneParams & {
goHome?: boolean;
mode?: ErrorMessageMode;
loginCallback?: () => Promise<void>;
},
): Promise<GetUserInfoModel | null> {
try {
const { goHome = true, mode, ...loginParams } = params;
const { goHome = true, mode, loginCallback, ...loginParams } = params;
const data = await loginPhoneApi(loginParams, mode);
const { access_token } = data;
this.setSso(false);
this.setToken(access_token);
return this.afterLoginAction(goHome);
return this.afterLoginAction(goHome, loginCallback);
} catch (error) {
return Promise.reject(error);
}
@ -138,10 +141,10 @@ export const useUserStore = defineStore({
return this.afterLoginAction(true);
},
async afterLoginAction(goHome?: boolean): Promise<GetUserInfoModel | null> {
async afterLoginAction(goHome?: boolean, loginCallback?: () => Promise<void>): Promise<GetUserInfoModel | null> {
if (!this.getToken) return null;
// get user info
await this.getUserInfoAction();
await this.getUserInfoAction(loginCallback);
try {
const appStore = useAppStoreWithOut();
@ -167,10 +170,11 @@ export const useUserStore = defineStore({
}
return this.userInfo;
},
async getUserInfoAction(): Promise<GetUserInfoModel> {
async getUserInfoAction(loginCallback?: () => Promise<void>): Promise<GetUserInfoModel> {
const userInfo = await getUserInfo();
const abpStore = useAbpStoreWithOut();
let currentUser = abpStore.getApplication.currentUser;
// 避免多次请求接口
if (userInfo?.sub !== currentUser.id) {
@ -178,6 +182,10 @@ export const useUserStore = defineStore({
currentUser = abpStore.getApplication.currentUser;
}
if (loginCallback) {
await loginCallback();
}
const outgoingUserInfo: { [key: string]: any } = {
// 从 currentuser 接口获取
userId: currentUser.id,

4
apps/vue/src/utils/http/axios/checkStatus.ts

@ -97,6 +97,10 @@ export function checkResponse(response: any): string | undefined {
return undefined;
}
if (response.data.Enterprises) {
return response.data.Enterprises;
}
let errorJson = response.data.error;
// abp框架抛出异常信息

22
apps/vue/src/views/oss-management/objects/components/FolderTree.vue

@ -59,6 +59,7 @@
key: './',
path: '',
name: './',
isLeaf: false,
children: [],
},
]);
@ -66,8 +67,18 @@
() => props.bucket,
(bucket) => {
if (bucket) {
expandedKeys.value = [];
selectedKeys.value = [];
fetchFolders(bucket).then((fs) => {
folders.value[0].children = fs;
var foldersRoot: Folder[] = [{
title: L('Objects:Root'),
key: './',
path: '',
name: './',
isLeaf: false,
children: fs,
}];
folders.value = foldersRoot;
});
}
},
@ -77,10 +88,10 @@
)
const fetchChildren: TreeProps['loadData'] = treeNode => {
return new Promise((resolve) => {
if (treeNode.dataRef!.children!.length > 0) {
resolve();
return;
}
// if (treeNode.dataRef!.children!.length > 0) {
// resolve();
// return;
// }
let path = '';
if (treeNode.dataRef?.path) {
path = path + treeNode.dataRef?.path;
@ -119,6 +130,7 @@
title: item.name,
path: item.path,
children: [],
isLeaf: false,
};
});
return resolve(fs);

1
apps/vue/src/views/oss-management/objects/datas/typing.ts

@ -3,5 +3,6 @@ export interface Folder {
title: string,
path?: string,
name: string,
isLeaf?: boolean,
children?: Folder[],
}

2
apps/vue/src/views/sys/login/Login.vue

@ -37,6 +37,7 @@
class="relative w-full px-5 py-8 mx-auto my-auto rounded-md shadow-md xl:ml-16 xl:bg-transparent sm:px-8 xl:p-4 xl:shadow-none sm:w-3/4 lg:w-2/4 xl:w-auto enter-x"
>
<LoginForm />
<PortalForm />
<ForgetPasswordForm />
<RegisterForm />
<MobileRegisterForm />
@ -57,6 +58,7 @@
import RegisterForm from './RegisterForm.vue';
import MobileForm from './MobileForm.vue';
import QrCodeForm from './QrCodeForm.vue';
import PortalForm from './PortalForm.vue';
import MobileRegisterForm from './MobileRegisterForm.vue';
import { useGlobSetting } from '/@/hooks/setting';
import { useI18n } from '/@/hooks/web/useI18n';

7
apps/vue/src/views/sys/login/LoginForm.vue

@ -76,6 +76,11 @@
<Divider class="enter-x">{{ t('sys.login.otherSignIn') }}</Divider>
<div class="flex justify-evenly enter-x" :class="`${prefixCls}-sign-in-way`">
<GlobalOutlined
v-if="getLoginState !== LoginStateEnum.Portal"
:title="t('sys.login.portalSignInFormTitle')"
@click="setLoginState(LoginStateEnum.Portal)"
/>
<SvgIcon
v-if="getLoginState !== LoginStateEnum.SSO"
name="idsv4"
@ -106,7 +111,7 @@
import { reactive, ref, unref, computed } from 'vue';
import { Checkbox, Form, Input, Row, Col, Button, Divider } from 'ant-design-vue';
import { MobileOutlined, WechatOutlined, UserOutlined } from '@ant-design/icons-vue';
import { MobileOutlined, WechatOutlined, UserOutlined, GlobalOutlined } from '@ant-design/icons-vue';
import { SvgIcon } from '/@/components/Icon';
import { Input as BInput } from '/@/components/Input';
import { useModal } from '/@/components/Modal';

1
apps/vue/src/views/sys/login/LoginFormTitle.vue

@ -16,6 +16,7 @@
const titleObj = {
[LoginStateEnum.RESET_PASSWORD]: t('sys.login.forgetFormTitle'),
[LoginStateEnum.LOGIN]: t('sys.login.signInFormTitle'),
[LoginStateEnum.Portal]: t('sys.login.signInFormTitle'),
[LoginStateEnum.REGISTER]: t('sys.login.signUpFormTitle'),
[LoginStateEnum.MOBILE_REGISTER]: t('sys.login.signUpFormTitle'),
[LoginStateEnum.MOBILE]: t('sys.login.mobileSignInFormTitle'),

154
apps/vue/src/views/sys/login/PortalForm.vue

@ -0,0 +1,154 @@
<template>
<template v-if="getShow">
<LoginFormTitle class="enter-x" />
<Form
class="p-4 enter-x"
:model="formData"
:rules="getFormRules"
ref="formRef"
colon
labelAlign="left"
layout="vertical"
@keypress.enter="handleLogin"
>
<FormItem name="userName" class="enter-x" :label="t('AbpAccount.DisplayName:UserName')">
<BInput
size="large"
v-model:value="formData.userName"
:placeholder="t('AbpAccount.DisplayName:UserName')"
class="fix-auto-fill"
/>
</FormItem>
<FormItem name="password" class="enter-x" :label="t('AbpAccount.DisplayName:Password')">
<InputPassword
size="large"
visibilityToggle
autocomplete="off"
v-model:value="formData.password"
:placeholder="t('AbpAccount.DisplayName:Password')"
/>
</FormItem>
<FormItem class="enter-x">
<Button type="primary" size="large" block @click="handleLogin" :loading="loading">
{{ L('Login') }}
</Button>
<Button size="large" block class="mt-4" @click="handleBackLogin">
{{ L('GoBack') }}
</Button>
</FormItem>
</Form>
<BasicModal @register="registerModal" :title="t('sys.login.loginToPortalTitle')" :height="400">
<List item-layout="horizontal" :data-source="portalModel">
<template #renderItem="{ item }">
<ListItem>
<ListItemMeta>
<template #title>
<Button type="text" @click="handleLoginTo(item.Id)" :loading="loading" :disabled="loading">{{ item.Name }}</Button>
</template>
<template #avatar>
<Avatar :src="item.Logo" />
</template>
</ListItemMeta>
</ListItem>
</template>
</List>
</BasicModal>
</template>
</template>
<script lang="ts" setup>
import { reactive, ref, computed, unref, inject } from 'vue';
import { Avatar, Form, Button, Input, List } from 'ant-design-vue';
import { BasicModal, useModal } from '/@/components/Modal';
import LoginFormTitle from './LoginFormTitle.vue';
import { useLocalization } from '/@/hooks/abp/useLocalization';
import { useLoginState, useFormRules, useFormValid, LoginStateEnum } from './useLogin';
import { useAbpStoreWithOut } from '/@/store/modules/abp';
import { useUserStoreWithOut } from '/@/store/modules/user';
import { useI18n } from '/@/hooks/web/useI18n';
import { useMessage } from '/@/hooks/web/useMessage';
import { useGlobSetting } from '/@/hooks/setting';
import { PortalLoginModel } from '/@/api/sys/model/userModel';
const FormItem = Form.Item;
const InputPassword = Input.Password;
const ListItem = List.Item;
const ListItemMeta = ListItem.Meta;
const { notification } = useMessage();
const [registerModal, { openModal, closeModal }] = useModal();
const { t } = useI18n();
const { L } = useLocalization('AbpAccount');
const { handleBackLogin, getLoginState } = useLoginState();
const userStore = useUserStoreWithOut();
const abpStore = useAbpStoreWithOut();
const formRef = ref();
const loading = ref(false);
const portalModel = ref<PortalLoginModel[]>([]);
const formData = reactive({
userName: '',
password: '',
});
const { validForm } = useFormValid(formRef);
const { getFormRules } = useFormRules();
const globSetting = useGlobSetting();
const cookies = inject<any>('$cookies');
const getShow = computed(() => unref(getLoginState) === LoginStateEnum.Portal);
async function handleLoginTo(enterpriseId?: string) {
const data = await validForm();
if (!data) return;
try {
loading.value = true;
closeModal();
const userInfo = await userStore.login({
username: data.userName,
password: data.password,
enterpriseId: enterpriseId,
mode: 'none', //
isPortalLogin: true,
loginCallback: () => {
return new Promise((resolve) => {
var currentTenant = abpStore.getApplication.currentTenant;
if (currentTenant.id) {
setTimeout(() => {
cookies?.set(globSetting.multiTenantKey, currentTenant.id);
return resolve();
}, 100);
} else {
return resolve();
}
});
},
});
if (userInfo) {
notification.success({
message: t('sys.login.loginSuccessTitle'),
description: `${t('sys.login.loginSuccessDesc')}: ${
userInfo.realName ?? userInfo.username
}`,
duration: 3,
});
}
} catch (error) {
portalModel.value = JSON.parse(error as string) as PortalLoginModel[];
openModal(true);
// createConfirm({
// iconType: 'info',
// title: '',
// content: '',
// okCancel: false,
// });
} finally {
loading.value = false;
}
}
async function handleLogin() {
await handleLoginTo();
}
</script>

1
apps/vue/src/views/sys/login/useLogin.ts

@ -13,6 +13,7 @@ export enum LoginStateEnum {
WECHAT,
SSO,
TwoFactor,
Portal,
}
const currentState = ref(LoginStateEnum.LOGIN);

8
aspnet-core/Directory.Build.props

@ -1,18 +1,18 @@
<Project>
<PropertyGroup>
<VoloAbpPackageVersion>7.2.2</VoloAbpPackageVersion>
<VoloAbpPackageVersion>7.3.2</VoloAbpPackageVersion>
<VoloAbpLeptonXThemePackageVersion>2.0.1</VoloAbpLeptonXThemePackageVersion>
<LINGYUNAbpPackageVersion>7.2.2</LINGYUNAbpPackageVersion>
<LINGYUNAbpPackageVersion>7.3.2</LINGYUNAbpPackageVersion>
<DaprPackageVersion>1.11.0</DaprPackageVersion>
<DistributedLockRedisPackageVersion>1.0.2</DistributedLockRedisPackageVersion>
<DotNetCoreCAPPackageVersion>7.1.0</DotNetCoreCAPPackageVersion>
<DotNetCoreCAPPackageVersion>7.2.0</DotNetCoreCAPPackageVersion>
<ElsaPackageVersion>2.11.0</ElsaPackageVersion>
<AliyunSDKPackageVersion>1.5.10</AliyunSDKPackageVersion>
<AliyunOSSSDKPackageVersion>2.13.0</AliyunOSSSDKPackageVersion>
<TencentCloudSDKPackageVersion>3.0.712</TencentCloudSDKPackageVersion>
<AgileConfigClientPackageVersion>1.6.9</AgileConfigClientPackageVersion>
<HangfireMySqlStoragePackageVersion>2.0.3</HangfireMySqlStoragePackageVersion>
<HangfireMSSQLStoragePackageVersion>1.7.29</HangfireMSSQLStoragePackageVersion>
<HangfireMSSQLStoragePackageVersion>1.8.2</HangfireMSSQLStoragePackageVersion>
<NESTPackageVersion>7.15.1</NESTPackageVersion>
<NewtonsoftJsonPackageVersion>13.0.1</NewtonsoftJsonPackageVersion>
<OpenTelemetryExtensionsHostingPackageVersion>1.0.0-rc8</OpenTelemetryExtensionsHostingPackageVersion>

2
aspnet-core/common.props

@ -1,7 +1,7 @@
<Project>
<PropertyGroup>
<LangVersion>latest</LangVersion>
<Version>7.2.2</Version>
<Version>7.3.2</Version>
<Authors>colin</Authors>
<NoWarn>$(NoWarn);CS1591;CS0436;CS8618;NU1803</NoWarn>
<PackageProjectUrl>https://github.com/colinin/abp-next-admin</PackageProjectUrl>

3
aspnet-core/modules/common/LINGYUN.Abp.EventBus.CAP/LINGYUN.Abp.EventBus.CAP.xml

@ -219,7 +219,7 @@
取消令牌
</summary>
</member>
<member name="M:LINGYUN.Abp.EventBus.CAP.CAPDistributedEventBus.#ctor(Microsoft.Extensions.DependencyInjection.IServiceScopeFactory,Microsoft.Extensions.Options.IOptions{Volo.Abp.EventBus.Distributed.AbpDistributedEventBusOptions},DotNetCore.CAP.ICapPublisher,Volo.Abp.Users.ICurrentUser,Volo.Abp.Clients.ICurrentClient,Volo.Abp.MultiTenancy.ICurrentTenant,Volo.Abp.Json.IJsonSerializer,Volo.Abp.Uow.IUnitOfWorkManager,Volo.Abp.Guids.IGuidGenerator,Volo.Abp.Timing.IClock,Volo.Abp.Threading.ICancellationTokenProvider,LINGYUN.Abp.EventBus.CAP.ICustomDistributedEventSubscriber,Volo.Abp.EventBus.IEventHandlerInvoker)">
<member name="M:LINGYUN.Abp.EventBus.CAP.CAPDistributedEventBus.#ctor(Microsoft.Extensions.DependencyInjection.IServiceScopeFactory,Microsoft.Extensions.Options.IOptions{Volo.Abp.EventBus.Distributed.AbpDistributedEventBusOptions},DotNetCore.CAP.ICapPublisher,Volo.Abp.Users.ICurrentUser,Volo.Abp.Clients.ICurrentClient,Volo.Abp.MultiTenancy.ICurrentTenant,Volo.Abp.Json.IJsonSerializer,Volo.Abp.Uow.IUnitOfWorkManager,Volo.Abp.Guids.IGuidGenerator,Volo.Abp.Timing.IClock,Volo.Abp.Threading.ICancellationTokenProvider,LINGYUN.Abp.EventBus.CAP.ICustomDistributedEventSubscriber,Volo.Abp.EventBus.IEventHandlerInvoker,Volo.Abp.EventBus.Local.ILocalEventBus)">
<summary>
constructor
</summary>
@ -236,6 +236,7 @@
<param name="clock"></param>
<param name="customDistributedEventSubscriber"></param>
<param name="eventHandlerInvoker"></param>
<param name="localEventBus"></param>
</member>
<member name="M:LINGYUN.Abp.EventBus.CAP.CAPDistributedEventBus.Subscribe(System.Type,Volo.Abp.EventBus.IEventHandlerFactory)">
<summary>

8
aspnet-core/modules/common/LINGYUN.Abp.EventBus.CAP/LINGYUN/Abp/EventBus/CAP/CAPDistributedEventBus.cs

@ -12,6 +12,7 @@ using Volo.Abp.Clients;
using Volo.Abp.DependencyInjection;
using Volo.Abp.EventBus;
using Volo.Abp.EventBus.Distributed;
using Volo.Abp.EventBus.Local;
using Volo.Abp.Guids;
using Volo.Abp.Json;
using Volo.Abp.MultiTenancy;
@ -77,6 +78,7 @@ namespace LINGYUN.Abp.EventBus.CAP
/// <param name="clock"></param>
/// <param name="customDistributedEventSubscriber"></param>
/// <param name="eventHandlerInvoker"></param>
/// <param name="localEventBus"></param>
public CAPDistributedEventBus(IServiceScopeFactory serviceScopeFactory,
IOptions<AbpDistributedEventBusOptions> distributedEventBusOptions,
ICapPublisher capPublisher,
@ -89,7 +91,8 @@ namespace LINGYUN.Abp.EventBus.CAP
IClock clock,
ICancellationTokenProvider cancellationTokenProvider,
ICustomDistributedEventSubscriber customDistributedEventSubscriber,
IEventHandlerInvoker eventHandlerInvoker)
IEventHandlerInvoker eventHandlerInvoker,
ILocalEventBus localEventBus)
: base(
serviceScopeFactory,
currentTenant,
@ -97,7 +100,8 @@ namespace LINGYUN.Abp.EventBus.CAP
distributedEventBusOptions,
guidGenerator,
clock,
eventHandlerInvoker)
eventHandlerInvoker,
localEventBus)
{
CapPublisher = capPublisher;
CurrentUser = currentUser;

1
aspnet-core/modules/common/LINGYUN.Abp.Notifications.Core/LINGYUN.Abp.Notifications.Core.csproj

@ -12,6 +12,7 @@
<PackageReference Include="Volo.Abp.EventBus.Abstractions" Version="$(VoloAbpPackageVersion)" />
<PackageReference Include="Volo.Abp.Localization" Version="$(VoloAbpPackageVersion)" />
<PackageReference Include="Volo.Abp.TextTemplating.Core" Version="$(VoloAbpPackageVersion)" />
<PackageReference Include="Volo.Abp.MultiTenancy.Abstractions" Version="$(VoloAbpPackageVersion)" />
</ItemGroup>
<ItemGroup>

4
aspnet-core/modules/common/LINGYUN.Abp.Notifications.Core/LINGYUN/Abp/Notifications/AbpNotificationsCoreModule.cs

@ -6,6 +6,7 @@ using System.Collections.Generic;
using Volo.Abp.EventBus.Abstractions;
using Volo.Abp.Localization;
using Volo.Abp.Modularity;
using Volo.Abp.MultiTenancy;
using Volo.Abp.TextTemplating;
namespace LINGYUN.Abp.Notifications;
@ -14,7 +15,8 @@ namespace LINGYUN.Abp.Notifications;
typeof(AbpTextTemplatingCoreModule),
typeof(AbpRealTimeModule),
typeof(AbpLocalizationModule),
typeof(AbpEventBusAbstractionsModule))]
typeof(AbpEventBusAbstractionsModule),
typeof(AbpMultiTenancyAbstractionsModule))]
public class AbpNotificationsCoreModule : AbpModule
{
public override void PreConfigureServices(ServiceConfigurationContext context)

1
aspnet-core/modules/notifications/LINGYUN.Abp.Notifications.Application.Contracts/LINGYUN/Abp/Notifications/Dto/UserNotificationDto.cs

@ -9,6 +9,7 @@ public class UserNotificationDto
public NotificationData Data { get; set; }
public DateTime CreationTime { get; set; }
public NotificationType Type { get; set; }
public NotificationLifetime Lifetime { get; set; }
public NotificationSeverity Severity { get; set; }
public NotificationReadState State { get; set; }
public NotificationContentType ContentType { get; set; }

4
aspnet-core/modules/openIddict/LINGYUN.Abp.OpenIddict.LinkUser/LINGYUN/Abp/OpenIddict/LinkUser/LinkUserTokenExtensionGrant.cs

@ -203,9 +203,9 @@ public class LinkUserTokenExtensionGrant : ITokenExtensionGrant
protected async virtual Task SetClaimsDestinationsAsync(ExtensionGrantContext context, ClaimsPrincipal principal)
{
var claimDestinationsManager = GetRequiredService<AbpOpenIddictClaimDestinationsManager>(context);
var openIddictClaimsPrincipalManager = GetRequiredService<AbpOpenIddictClaimsPrincipalManager>(context);
await claimDestinationsManager.SetAsync(principal);
await openIddictClaimsPrincipalManager.HandleAsync(context.Request, principal);
}
protected async virtual Task<IEnumerable<string>> GetResourcesAsync(ExtensionGrantContext context)

4
aspnet-core/modules/openIddict/LINGYUN.Abp.OpenIddict.Sms/LINGYUN/Abp/OpenIddict/Sms/SmsTokenExtensionGrant.cs

@ -176,9 +176,9 @@ public class SmsTokenExtensionGrant : ITokenExtensionGrant
protected async virtual Task SetClaimsDestinationsAsync(ExtensionGrantContext context, ClaimsPrincipal principal)
{
var claimDestinationsManager = GetRequiredService<AbpOpenIddictClaimDestinationsManager>(context);
var openIddictClaimsPrincipalManager = GetRequiredService<AbpOpenIddictClaimsPrincipalManager>(context);
await claimDestinationsManager.SetAsync(principal);
await openIddictClaimsPrincipalManager.HandleAsync(context.Request, principal);
}
protected async virtual Task<IEnumerable<string>> GetResourcesAsync(ExtensionGrantContext context)

4
aspnet-core/modules/openIddict/LINGYUN.Abp.OpenIddict.WeChat/LINGYUN/Abp/OpenIddict/WeChat/WeChatTokenExtensionGrant.cs

@ -213,9 +213,9 @@ public abstract class WeChatTokenExtensionGrant : ITokenExtensionGrant
protected async virtual Task SetClaimsDestinationsAsync(ExtensionGrantContext context, ClaimsPrincipal principal)
{
var claimDestinationsManager = GetRequiredService<AbpOpenIddictClaimDestinationsManager>(context);
var openIddictClaimsPrincipalManager = GetRequiredService<AbpOpenIddictClaimsPrincipalManager>(context);
await claimDestinationsManager.SetAsync(principal);
await openIddictClaimsPrincipalManager.HandleAsync(context.Request, principal);
}
protected async virtual Task<IEnumerable<string>> GetResourcesAsync(ExtensionGrantContext context)

1
aspnet-core/modules/platform/LINGYUN.Platform.Domain.Shared/LINGYUN.Platform.Domain.Shared.csproj

@ -18,6 +18,7 @@
<ItemGroup>
<PackageReference Include="Volo.Abp.Validation" Version="$(VoloAbpPackageVersion)" />
<PackageReference Include="Volo.Abp.MultiTenancy.Abstractions" Version="$(VoloAbpPackageVersion)" />
</ItemGroup>
</Project>

5
aspnet-core/modules/platform/LINGYUN.Platform.Domain.Shared/LINGYUN/Platform/PlatformDomainSharedModule.cs

@ -2,12 +2,15 @@
using Volo.Abp.Localization;
using Volo.Abp.Localization.ExceptionHandling;
using Volo.Abp.Modularity;
using Volo.Abp.MultiTenancy;
using Volo.Abp.Validation.Localization;
using Volo.Abp.VirtualFileSystem;
namespace LINGYUN.Platform
{
[DependsOn(typeof(AbpLocalizationModule))]
[DependsOn(
typeof(AbpLocalizationModule),
typeof(AbpMultiTenancyAbstractionsModule))]
public class PlatformDomainSharedModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)

1
aspnet-core/modules/platform/LINGYUN.Platform.Settings.VueVbenAdmin/LINGYUN.Platform.Settings.VueVbenAdmin.csproj

@ -18,6 +18,7 @@
<ItemGroup>
<PackageReference Include="Volo.Abp.Settings" Version="$(VoloAbpPackageVersion)" />
<PackageReference Include="Volo.Abp.MultiTenancy" Version="$(VoloAbpPackageVersion)" />
</ItemGroup>
<ItemGroup>

4
aspnet-core/modules/platform/LINGYUN.Platform.Settings.VueVbenAdmin/LINGYUN/Platform/Settings/VueVbenAdmin/PlatformSettingsVueVbenAdminModule.cs

@ -1,12 +1,14 @@
using LINGYUN.Platform.Localization;
using Volo.Abp.Localization;
using Volo.Abp.Modularity;
using Volo.Abp.MultiTenancy;
using Volo.Abp.VirtualFileSystem;
namespace LINGYUN.Platform.Settings.VueVbenAdmin;
[DependsOn(
typeof(PlatformDomainSharedModule))]
typeof(PlatformDomainSharedModule),
typeof(AbpMultiTenancyModule))]
public class PlatformSettingsVueVbenAdminModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)

1
aspnet-core/modules/task-management/LINGYUN.Abp.BackgroundTasks.Abstractions/LINGYUN.Abp.BackgroundTasks.Abstractions.csproj

@ -10,6 +10,7 @@
<ItemGroup>
<PackageReference Include="Volo.Abp.Localization" Version="$(VoloAbpPackageVersion)" />
<PackageReference Include="Volo.Abp.MultiTenancy.Abstractions" Version="$(VoloAbpPackageVersion)" />
</ItemGroup>
</Project>

5
aspnet-core/modules/task-management/LINGYUN.Abp.BackgroundTasks.Abstractions/LINGYUN/Abp/BackgroundTasks/AbpBackgroundTasksAbstractionsModule.cs

@ -4,10 +4,13 @@ using System;
using System.Collections.Generic;
using Volo.Abp.Localization;
using Volo.Abp.Modularity;
using Volo.Abp.MultiTenancy;
namespace LINGYUN.Abp.BackgroundTasks;
[DependsOn(typeof(AbpLocalizationModule))]
[DependsOn(
typeof(AbpLocalizationModule),
typeof(AbpMultiTenancyAbstractionsModule))]
public class AbpBackgroundTasksAbstractionsModule : AbpModule
{
public override void PreConfigureServices(ServiceConfigurationContext context)

1
aspnet-core/modules/text-templating/LINGYUN.Abp.TextTemplating.Domain.Shared/LINGYUN.Abp.TextTemplating.Domain.Shared.csproj

@ -15,6 +15,7 @@
<ItemGroup>
<PackageReference Include="Volo.Abp.Validation" Version="$(VoloAbpPackageVersion)" />
<PackageReference Include="Volo.Abp.MultiTenancy.Abstractions" Version="$(VoloAbpPackageVersion)" />
</ItemGroup>
</Project>

4
aspnet-core/modules/text-templating/LINGYUN.Abp.TextTemplating.Domain.Shared/LINGYUN/Abp/TextTemplating/AbpTextTemplatingDomainSharedModule.cs

@ -2,13 +2,15 @@
using Volo.Abp.Localization;
using Volo.Abp.Localization.ExceptionHandling;
using Volo.Abp.Modularity;
using Volo.Abp.MultiTenancy;
using Volo.Abp.Validation;
using Volo.Abp.VirtualFileSystem;
namespace LINGYUN.Abp.TextTemplating;
[DependsOn(
typeof(AbpValidationModule))]
typeof(AbpValidationModule),
typeof(AbpMultiTenancyAbstractionsModule))]
public class AbpTextTemplatingDomainSharedModule : AbpModule
{
public override void ConfigureServices(ServiceConfigurationContext context)

2
aspnet-core/services/LY.MicroService.AuthServer/AuthServerModule.Configure.cs

@ -88,7 +88,7 @@ public partial class AuthServerModule
{
builder.AddValidation(options =>
{
options.AddAudiences("lingyun-abp-application");
//options.AddAudiences("lingyun-abp-application");
options.UseLocalServer();

10
gateways/Directory.Build.props

@ -1,14 +1,14 @@
<Project>
<PropertyGroup>
<VoloAbpPackageVersion>7.2.2</VoloAbpPackageVersion>
<LINGYUNAbpPackageVersion>7.2.2</LINGYUNAbpPackageVersion>
<DaprPackageVersion>1.10.0</DaprPackageVersion>
<DotNetCoreCAPPackageVersion>7.1.0</DotNetCoreCAPPackageVersion>
<VoloAbpPackageVersion>7.3.2</VoloAbpPackageVersion>
<LINGYUNAbpPackageVersion>7.3.2</LINGYUNAbpPackageVersion>
<DaprPackageVersion>1.11.0</DaprPackageVersion>
<DotNetCoreCAPPackageVersion>7.2.0</DotNetCoreCAPPackageVersion>
<AliyunSDKPackageVersion>1.5.10</AliyunSDKPackageVersion>
<AliyunOSSSDKPackageVersion>2.13.0</AliyunOSSSDKPackageVersion>
<AgileConfigClientPackageVersion>1.2.1.5</AgileConfigClientPackageVersion>
<HangfireMySqlStoragePackageVersion>2.0.3</HangfireMySqlStoragePackageVersion>
<HangfireMSSQLStoragePackageVersion>1.7.27</HangfireMSSQLStoragePackageVersion>
<HangfireMSSQLStoragePackageVersion>1.8.2</HangfireMSSQLStoragePackageVersion>
<NESTPackageVersion>7.15.1</NESTPackageVersion>
<StackExchangeRedisPackageVersion>2.0.593</StackExchangeRedisPackageVersion>
<SerilogPackageVersion>2.10.0</SerilogPackageVersion>

2
gateways/common.props

@ -1,7 +1,7 @@
<Project>
<PropertyGroup>
<LangVersion>latest</LangVersion>
<Version>7.2.2</Version>
<Version>7.3.2</Version>
<Authors>colin</Authors>
<NoWarn>$(NoWarn);CS1591;CS0436;CS8618;NU1803</NoWarn>
<PackageProjectUrl>https://github.com/colinin/abp-next-admin</PackageProjectUrl>

2
gateways/internal/LINGYUN.MicroService.Internal.ApiGateway/src/LINGYUN.MicroService.Internal.ApiGateway/Dockerfile

@ -1,4 +1,4 @@
FROM mcr.microsoft.com/dotnet/aspnet:6.0
FROM mcr.microsoft.com/dotnet/aspnet:7.0
LABEL maintainer="colin.in@foxmail.com"
WORKDIR /app

Loading…
Cancel
Save