feat(sj_1.0.0): 关于页面优化
This commit is contained in:
parent
7d91233c80
commit
17385bc241
@ -1,18 +1,20 @@
|
|||||||
{
|
{
|
||||||
"name": "snail-job",
|
"name": "snail-job",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"version": "1.1.0",
|
"version": "1.0.0",
|
||||||
"description": "A flexible, reliable, and fast platform for distributed task retry and distributed task scheduling.",
|
"description": "A flexible, reliable, and fast platform for distributed task retry and distributed task scheduling.",
|
||||||
"license": "Apache-2.0",
|
"license": "Apache-2.0",
|
||||||
"homepage": "https://gitee.com/aizuda/snail-job",
|
"homepage": "https://gitee.com/aizuda/snail-job",
|
||||||
"repository": {
|
"repository": {
|
||||||
"url": "https://gitee.com/aizuda/snail-job.git"
|
"githubUrl": "https://github.com/aizuda/snail-job.git",
|
||||||
|
"giteeUrl": "https://gitee.com/aizuda/snail-job.git"
|
||||||
},
|
},
|
||||||
"bugs": {
|
"bugs": {
|
||||||
"url": "https://gitee.com/aizuda/snail-job/issues"
|
"url": "https://gitee.com/aizuda/snail-job/issues"
|
||||||
},
|
},
|
||||||
"keywords": [
|
"keywords": [
|
||||||
"Job",
|
"Job",
|
||||||
|
"Retry",
|
||||||
"Snail Job",
|
"Snail Job",
|
||||||
"Vue3 admin ",
|
"Vue3 admin ",
|
||||||
"vue-admin-template",
|
"vue-admin-template",
|
||||||
@ -109,5 +111,5 @@
|
|||||||
"lint-staged": {
|
"lint-staged": {
|
||||||
"*": "eslint --fix"
|
"*": "eslint --fix"
|
||||||
},
|
},
|
||||||
"website": "https://www.easyretry.com"
|
"website": "https://www.easyretry.com/pages/78ba75/"
|
||||||
}
|
}
|
||||||
|
@ -377,7 +377,10 @@ const local: App.I18n.Schema = {
|
|||||||
version: 'Version',
|
version: 'Version',
|
||||||
latestBuildTime: 'Latest Build Time',
|
latestBuildTime: 'Latest Build Time',
|
||||||
githubLink: 'Github Link',
|
githubLink: 'Github Link',
|
||||||
previewLink: 'Preview Link'
|
giteeLink: 'Gitee Link',
|
||||||
|
officialWebsite: 'Home Page',
|
||||||
|
previewLink: 'Preview Link',
|
||||||
|
videoTutorial: 'Video Tutorial'
|
||||||
},
|
},
|
||||||
prdDep: 'Production Dependency',
|
prdDep: 'Production Dependency',
|
||||||
devDep: 'Development Dependency'
|
devDep: 'Development Dependency'
|
||||||
|
@ -371,13 +371,28 @@ const local: App.I18n.Schema = {
|
|||||||
},
|
},
|
||||||
about: {
|
about: {
|
||||||
title: '关于',
|
title: '关于',
|
||||||
introduction: `SoybeanAdmin 是一个优雅且功能强大的后台管理模板,基于最新的前端技术栈,包括 Vue3, Vite5, TypeScript, Pinia 和 UnoCSS。它内置了丰富的主题配置和组件,代码规范严谨,实现了自动化的文件路由系统。此外,它还采用了基于 ApiFox 的在线Mock数据方案。SoybeanAdmin 为您提供了一站式的后台管理解决方案,无需额外配置,开箱即用。同样是一个快速学习前沿技术的最佳实践。`,
|
introduction: `<span style="font-weight: bold; color: #1366ff">Snail Job</span>
|
||||||
|
<br />
|
||||||
|
是一个功能强大的分布式重试和任务调度平台,为支持提高分布式业务系统一致性和分布式任务调度而设计。具备高度可伸缩性和容错性,还包含完善的权限管理和强大的告警监控功能。
|
||||||
|
一次部署即可获得重试和任务调度功能,为开发人员提供了简单而高效的解决方案。
|
||||||
|
<br />
|
||||||
|
在分布式系统中,任务失败是不可避免的,可能由网络问题、服务故障等原因引起。
|
||||||
|
<br />
|
||||||
|
<span style="font-weight: bold; color: #1366ff">分布式重试模块</span> <br />
|
||||||
|
旨在帮助开发人员处理这些失败,确保任务能够在失败后正确重试,提升系统稳定性和可靠性。
|
||||||
|
高颜值、易用性的用户界面,方便开发人员配置任务的重试策略和调度规则。支持多种重试策略,如指数退避、固定间隔等,开发人员可根据业务需求选择最适合的策略。
|
||||||
|
<br />
|
||||||
|
<span style="font-weight: bold; color: #1366ff">分布式任务调度模块</span> <br />
|
||||||
|
是高性能的任务调度框架,无需依赖外部中间件即可实现秒级任务间隔调度。支持多种执行模式,如集群模式、广播模式和分片模式,同时提供多种阻塞策略,如丢弃、覆盖和并行,以提高任务执行效率。平台还提供监控和日志功能,帮助开发人员实时监控任务执行状态。`,
|
||||||
projectInfo: {
|
projectInfo: {
|
||||||
title: '项目信息',
|
title: '项目信息',
|
||||||
version: '版本',
|
version: '版本',
|
||||||
latestBuildTime: '最新构建时间',
|
latestBuildTime: '最新构建时间',
|
||||||
githubLink: 'Github 地址',
|
githubLink: 'Github 地址',
|
||||||
previewLink: '预览地址'
|
previewLink: '预览地址',
|
||||||
|
giteeLink: 'Gitee 地址',
|
||||||
|
officialWebsite: '官网',
|
||||||
|
videoTutorial: '视频教程'
|
||||||
},
|
},
|
||||||
prdDep: '生产依赖',
|
prdDep: '生产依赖',
|
||||||
devDep: '开发依赖'
|
devDep: '开发依赖'
|
||||||
|
3
src/typings/app.d.ts
vendored
3
src/typings/app.d.ts
vendored
@ -529,6 +529,9 @@ declare namespace App {
|
|||||||
latestBuildTime: string;
|
latestBuildTime: string;
|
||||||
githubLink: string;
|
githubLink: string;
|
||||||
previewLink: string;
|
previewLink: string;
|
||||||
|
giteeLink: string;
|
||||||
|
officialWebsite: string;
|
||||||
|
videoTutorial: string;
|
||||||
};
|
};
|
||||||
prdDep: string;
|
prdDep: string;
|
||||||
devDep: string;
|
devDep: string;
|
||||||
|
@ -43,42 +43,93 @@ const latestBuildTime = BUILD_TIME;
|
|||||||
<template>
|
<template>
|
||||||
<NSpace vertical :size="16">
|
<NSpace vertical :size="16">
|
||||||
<NCard :title="$t('page.about.title')" :bordered="false" size="small" segmented class="card-wrapper">
|
<NCard :title="$t('page.about.title')" :bordered="false" size="small" segmented class="card-wrapper">
|
||||||
<p>{{ $t('page.about.introduction') }}</p>
|
<p v-html="$t('page.about.introduction')" />
|
||||||
</NCard>
|
</NCard>
|
||||||
<NCard :title="$t('page.about.projectInfo.title')" :bordered="false" size="small" segmented class="card-wrapper">
|
<NCard :title="$t('page.about.projectInfo.title')" :bordered="false" size="small" segmented class="card-wrapper">
|
||||||
<NDescriptions label-placement="left" bordered size="small" :column="column">
|
<NDescriptions label-placement="left" bordered size="small" :column="column">
|
||||||
|
<NDescriptionsItem :label="$t('page.about.projectInfo.officialWebsite')">
|
||||||
|
<a class="text-primary" :href="pkg.website" target="_blank" rel="noopener noreferrer">
|
||||||
|
{{ $t('page.about.projectInfo.officialWebsite') }}
|
||||||
|
</a>
|
||||||
|
</NDescriptionsItem>
|
||||||
<NDescriptionsItem :label="$t('page.about.projectInfo.version')">
|
<NDescriptionsItem :label="$t('page.about.projectInfo.version')">
|
||||||
<NTag type="primary">{{ pkgJson.version }}</NTag>
|
<NTag type="primary">{{ pkgJson.version }}</NTag>
|
||||||
</NDescriptionsItem>
|
</NDescriptionsItem>
|
||||||
<NDescriptionsItem :label="$t('page.about.projectInfo.latestBuildTime')">
|
|
||||||
<NTag type="primary">{{ latestBuildTime }}</NTag>
|
|
||||||
</NDescriptionsItem>
|
|
||||||
<NDescriptionsItem :label="$t('page.about.projectInfo.githubLink')">
|
<NDescriptionsItem :label="$t('page.about.projectInfo.githubLink')">
|
||||||
<a class="text-primary" :href="pkg.homepage" target="_blank" rel="noopener noreferrer">
|
<a class="text-primary" :href="pkg.repository.githubUrl" target="_blank" rel="noopener noreferrer">
|
||||||
{{ $t('page.about.projectInfo.githubLink') }}
|
{{ $t('page.about.projectInfo.githubLink') }}
|
||||||
</a>
|
</a>
|
||||||
</NDescriptionsItem>
|
</NDescriptionsItem>
|
||||||
|
<NDescriptionsItem :label="$t('page.about.projectInfo.giteeLink')">
|
||||||
|
<a class="text-primary" :href="pkg.repository.giteeUrl" target="_blank" rel="noopener noreferrer">
|
||||||
|
{{ $t('page.about.projectInfo.giteeLink') }}
|
||||||
|
</a>
|
||||||
|
</NDescriptionsItem>
|
||||||
<NDescriptionsItem :label="$t('page.about.projectInfo.previewLink')">
|
<NDescriptionsItem :label="$t('page.about.projectInfo.previewLink')">
|
||||||
<a class="text-primary" :href="pkg.website" target="_blank" rel="noopener noreferrer">
|
<a class="text-primary" :href="pkg.website" target="_blank" rel="noopener noreferrer">
|
||||||
{{ $t('page.about.projectInfo.previewLink') }}
|
{{ $t('page.about.projectInfo.previewLink') }}
|
||||||
</a>
|
</a>
|
||||||
</NDescriptionsItem>
|
</NDescriptionsItem>
|
||||||
</NDescriptions>
|
<NDescriptionsItem :label="$t('page.about.projectInfo.latestBuildTime')">
|
||||||
</NCard>
|
<NTag type="primary">{{ latestBuildTime }}</NTag>
|
||||||
<NCard :title="$t('page.about.prdDep')" :bordered="false" size="small" segmented class="card-wrapper">
|
|
||||||
<NDescriptions label-placement="left" bordered size="small" :column="column">
|
|
||||||
<NDescriptionsItem v-for="item in pkgJson.dependencies" :key="item.name" :label="item.name">
|
|
||||||
{{ item.version }}
|
|
||||||
</NDescriptionsItem>
|
|
||||||
</NDescriptions>
|
|
||||||
</NCard>
|
|
||||||
<NCard :title="$t('page.about.devDep')" :bordered="false" size="small" segmented class="card-wrapper">
|
|
||||||
<NDescriptions label-placement="left" bordered size="small" :column="column">
|
|
||||||
<NDescriptionsItem v-for="item in pkgJson.devDependencies" :key="item.name" :label="item.name">
|
|
||||||
{{ item.version }}
|
|
||||||
</NDescriptionsItem>
|
</NDescriptionsItem>
|
||||||
</NDescriptions>
|
</NDescriptions>
|
||||||
</NCard>
|
</NCard>
|
||||||
|
<!-- <NCard-->
|
||||||
|
<!-- :title="$t('page.about.projectInfo.videoTutorial')"-->
|
||||||
|
<!-- :bordered="false"-->
|
||||||
|
<!-- size="small"-->
|
||||||
|
<!-- segmented-->
|
||||||
|
<!-- class="card-wrapper"-->
|
||||||
|
<!-- >-->
|
||||||
|
<!-- <NCarousel :slides-per-view="3" :space-between="20" show-arrow :mousewheel="true">-->
|
||||||
|
<!-- <iframe-->
|
||||||
|
<!-- src="//player.bilibili.com/player.html?bvid=BV1Yu4y1k7WU&page=1"-->
|
||||||
|
<!-- scrolling="no"-->
|
||||||
|
<!-- border="0"-->
|
||||||
|
<!-- width="100%"-->
|
||||||
|
<!-- height="298px"-->
|
||||||
|
<!-- autoplay="no"-->
|
||||||
|
<!-- frameborder="no"-->
|
||||||
|
<!-- framespacing="0"-->
|
||||||
|
<!-- allowfullscreen="false"-->
|
||||||
|
<!-- ></iframe>-->
|
||||||
|
<!-- <iframe-->
|
||||||
|
<!-- src="//player.bilibili.com/player.html?bvid=BV1Lu4y1C74h&page=1"-->
|
||||||
|
<!-- scrolling="no"-->
|
||||||
|
<!-- border="0"-->
|
||||||
|
<!-- width="100%"-->
|
||||||
|
<!-- height="298px"-->
|
||||||
|
<!-- frameborder="no"-->
|
||||||
|
<!-- framespacing="0"-->
|
||||||
|
<!-- autoplay="no"-->
|
||||||
|
<!-- allowfullscreen="false"-->
|
||||||
|
<!-- ></iframe>-->
|
||||||
|
<!-- <iframe-->
|
||||||
|
<!-- src="//player.bilibili.com/player.html?bvid=BV1Km4y1N7s9&page=1"-->
|
||||||
|
<!-- scrolling="no"-->
|
||||||
|
<!-- border="0"-->
|
||||||
|
<!-- width="100%"-->
|
||||||
|
<!-- height="298px"-->
|
||||||
|
<!-- autoplay="no"-->
|
||||||
|
<!-- frameborder="no"-->
|
||||||
|
<!-- framespacing="0"-->
|
||||||
|
<!-- allowfullscreen="true"-->
|
||||||
|
<!-- ></iframe>-->
|
||||||
|
<!-- <iframe-->
|
||||||
|
<!-- src="//player.bilibili.com/player.html?bvid=BV1xk4y1F7tD&page=1"-->
|
||||||
|
<!-- scrolling="no"-->
|
||||||
|
<!-- border="0"-->
|
||||||
|
<!-- width="100%"-->
|
||||||
|
<!-- height="298px"-->
|
||||||
|
<!-- frameborder="no"-->
|
||||||
|
<!-- framespacing="0"-->
|
||||||
|
<!-- allowfullscreen="true"-->
|
||||||
|
<!-- ></iframe>-->
|
||||||
|
<!-- </NCarousel>-->
|
||||||
|
<!-- <p></p>-->
|
||||||
|
<!-- <p></p>-->
|
||||||
|
<!-- </NCard>-->
|
||||||
</NSpace>
|
</NSpace>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
@ -76,8 +76,15 @@ const { columnChecks, columns, data, getData, loading, mobilePagination, searchP
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
const label = $t(taskBatchStatusRecord[row.taskBatchStatus!]);
|
const label = $t(taskBatchStatusRecord[row.taskBatchStatus!]);
|
||||||
|
const tagMap: Record<number, NaiveUI.ThemeColor> = {
|
||||||
return <NTag type={tagColor(row.taskBatchStatus!)}>{label}</NTag>;
|
1: 'info',
|
||||||
|
2: 'info',
|
||||||
|
3: 'info',
|
||||||
|
4: 'error',
|
||||||
|
5: 'error',
|
||||||
|
6: 'error'
|
||||||
|
};
|
||||||
|
return <NTag type={tagMap[row.taskBatchStatus!]}>{label}</NTag>;
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user