xinwei #7

Merged
root merged 10 commits from xinwei into master 2024-10-29 16:59:11 +08:00
5 changed files with 326 additions and 322 deletions
Showing only changes of commit e8dd6758a3 - Show all commits

View File

@ -24,7 +24,7 @@ VITE_DROP_CONSOLE=false
VITE_SOURCEMAP=false
# 打包路径
VITE_BASE_PATH=/
VITE_BASE_PATH=/admin
# 商城H5会员端域名
VITE_MALL_H5_DOMAIN='http://localhost:3000'

View File

@ -4,12 +4,12 @@ NODE_ENV=production
VITE_DEV=false
# 请求路径
VITE_BASE_URL='http://localhost:48080'
VITE_BASE_URL='https://mt.ptzykjgs.com'
# 文件上传类型server - 后端上传, client - 前端直连上传仅支持S3服务
VITE_UPLOAD_TYPE=server
# 上传路径
VITE_UPLOAD_URL='http://localhost:48080/admin-api/infra/file/upload'
VITE_UPLOAD_URL='https://mt.ptzykjgs.com/admin-api/infra/file/upload'
# 接口地址
VITE_API_URL=/admin-api
@ -24,10 +24,13 @@ VITE_DROP_CONSOLE=true
VITE_SOURCEMAP=false
# 打包路径
VITE_BASE_PATH=/
VITE_BASE_PATH=/admin
# 输出路径
VITE_OUT_DIR=dist-prod
# 商城H5会员端域名
VITE_MALL_H5_DOMAIN='http://mall.yudao.iocoder.cn'
# 验证码的开关
VITE_APP_CAPTCHA_ENABLE=false

View File

@ -72,7 +72,7 @@ export const socialAuthRedirect = (type: number, redirectUri: string) => {
}
// 获取验证图片以及 token
export const getCode = (data) => {
return request.postOriginal({ url: 'system/captcha/get', data })
// return request.postOriginal({ url: 'system/captcha/get', data })
}
// 滑动或者点选验证

View File

@ -5,7 +5,7 @@ import remainingRouter from './modules/remaining'
// 创建路由实例
const router = createRouter({
history: createWebHistory(), // createWebHashHistory URL带#createWebHistory URL不带#
history: createWebHistory("/admin"), // createWebHashHistory URL带#createWebHistory URL不带#
strict: true,
routes: remainingRouter as RouteRecordRaw[],
scrollBehavior: () => ({ left: 0, top: 0 })

View File

@ -22,32 +22,17 @@
<div class="h-70px flex items-center justify-end lt-sm:mt-10px">
<div class="px-8px text-right">
<div class="mb-16px text-14px text-gray-400">{{ t('workplace.project') }}</div>
<CountTo
class="text-20px"
:start-val="0"
:end-val="totalSate.project"
:duration="2600"
/>
<CountTo class="text-20px" :start-val="0" :end-val="totalSate.project" :duration="2600" />
</div>
<el-divider direction="vertical" />
<div class="px-8px text-right">
<div class="mb-16px text-14px text-gray-400">{{ t('workplace.toDo') }}</div>
<CountTo
class="text-20px"
:start-val="0"
:end-val="totalSate.todo"
:duration="2600"
/>
<CountTo class="text-20px" :start-val="0" :end-val="totalSate.todo" :duration="2600" />
</div>
<el-divider direction="vertical" border-style="dashed" />
<div class="px-8px text-right">
<div class="mb-16px text-14px text-gray-400">{{ t('workplace.access') }}</div>
<CountTo
class="text-20px"
:start-val="0"
:end-val="totalSate.access"
:duration="2600"
/>
<CountTo class="text-20px" :start-val="0" :end-val="totalSate.access" :duration="2600" />
</div>
</div>
</el-col>
@ -55,9 +40,20 @@
</el-skeleton>
</el-card>
</div>
<div class="flex flex-wrap gap-4" style="margin: 20px 0;">
<div class="flex flex-wrap gap-4" style="margin: 10px 0;">
<el-card style="width: 420px;text-align: center;cursor: pointer;" shadow="hover" @click="goToXXLJob">任务调度中心</el-card>
</div>
<!-- 新增的静态图片部分 -->
<div>
<el-card style="width: 100%; text-align: center;" shadow="never">
<div style="overflow: hidden; height: calc(100% - 2px);">
<el-image :src="luduViewImage" fit="contain" style="width: 100%; transform: translateY(-2px);" />
</div>
</el-card>
</div>
<!-- <el-row class="mt-8px" :gutter="8" justify="space-between">
<el-col :xl="16" :lg="16" :md="24" :sm="24" :xs="24" class="mb-8px">
<el-card shadow="never">
@ -76,15 +72,7 @@
</template>
<el-skeleton :loading="loading" animated>
<el-row>
<el-col
v-for="(item, index) in projects"
:key="`card-${index}`"
:xl="8"
:lg="8"
:md="8"
:sm="24"
:xs="24"
>
<el-col v-for="(item, index) in projects" :key="`card-${index}`" :xl="8" :lg="8" :md="8" :sm="24" :xs="24">
<el-card shadow="hover" class="mr-5px mt-5px">
<div class="flex items-center">
<Icon :icon="item.icon" :size="25" class="mr-8px" />
@ -177,7 +165,7 @@
import { set } from 'lodash-es'
import { EChartsOption } from 'echarts'
import { formatTime } from '@/utils'
import luduView from '@/assets/imgs/ludu_view.png'
import { useUserStore } from '@/store/modules/user'
import { useWatermark } from '@/hooks/web/useWatermark'
import type { WorkplaceTotal, Project, Notice, Shortcut } from './types'
@ -185,6 +173,7 @@ import { pieOptions, barOptions } from './echarts-data'
defineOptions({ name: 'Home' })
const luduViewImage = ref(luduView);
const { t } = useI18n()
const userStore = useUserStore()
const { setWatermark } = useWatermark()
@ -390,7 +379,19 @@ const getAllApi = async () => {
}
const goToXXLJob = async () => {
window.open('http://127.0.0.1:9090/xxl-job-admin/');
window.open('https://mt.ptzykjgs.com/xxl-job-admin/');
}
getAllApi()
</script>
<style scoped>
.image-container {
width: 100%;
display: flex;
justify-content: center;
}
.el-image img {
width: 100%;
height: auto;
}
</style>