mirror of
https://gitee.com/likeadmin/likeadmin_java.git
synced 2026-06-11 08:45:29 +08:00
Compare commits
113 Commits
1.3.2
...
wjx2022122
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e5f1ac1231 | ||
|
|
c3e0a81b31 | ||
|
|
36b6540a60 | ||
|
|
6e7292b97c | ||
|
|
933ea5a3dd | ||
|
|
75c8b03969 | ||
|
|
a22fe53275 | ||
|
|
85ba64cd2f | ||
|
|
1d83523405 | ||
|
|
1ab2ca6b4e | ||
|
|
5c043df578 | ||
|
|
f7a1b14500 | ||
|
|
a1a70346c9 | ||
|
|
edfbe6ab4c | ||
|
|
d593391f62 | ||
|
|
5f5026d40c | ||
|
|
2453b0fc3b | ||
|
|
0077e75e85 | ||
|
|
327f0df6a9 | ||
|
|
03d09ca7d7 | ||
|
|
621e7916dc | ||
|
|
c2a64e30f5 | ||
|
|
698d44696e | ||
|
|
ef350201ca | ||
|
|
06bc994b42 | ||
|
|
2c5310ca21 | ||
|
|
0c5d7641b0 | ||
|
|
af92e6209c | ||
|
|
cab7c3af39 | ||
|
|
c38c46c09f | ||
|
|
1805cb1515 | ||
|
|
0d086f6198 | ||
|
|
4d43d7cdcc | ||
|
|
8105c877af | ||
|
|
ff5b649969 | ||
|
|
c64d0151b3 | ||
|
|
98328e1bb1 | ||
|
|
402321fe3c | ||
|
|
830c10ea73 | ||
|
|
728a0f6ec5 | ||
|
|
40df111da7 | ||
|
|
1d7c2383c1 | ||
|
|
3137a59566 | ||
|
|
339f63c0c0 | ||
|
|
edc5357b8c | ||
|
|
e22508240d | ||
|
|
8480f98f28 | ||
|
|
45b11402ce | ||
|
|
ef53643368 | ||
|
|
41d372da5f | ||
|
|
aa4ba06be0 | ||
|
|
aa92623d7c | ||
|
|
b13523ca5e | ||
|
|
522c698f6c | ||
|
|
b1fe1d9d47 | ||
|
|
25a85adf9e | ||
|
|
54c58d6ee1 | ||
|
|
52615d1646 | ||
|
|
2cd73748bb | ||
|
|
e23cb64f32 | ||
|
|
c639499fbc | ||
|
|
bd97df6f7b | ||
|
|
e211426c1a | ||
|
|
dafaf09011 | ||
|
|
97b8f7016d | ||
|
|
3247a5f7d0 | ||
|
|
57c88cf773 | ||
|
|
329734b332 | ||
|
|
c622781003 | ||
|
|
e89f22cd8c | ||
|
|
6db7255ed3 | ||
|
|
7a37ac18ac | ||
|
|
ca9a251176 | ||
|
|
798d12c16f | ||
|
|
124b1ff5dd | ||
|
|
a5d63d6c96 | ||
|
|
956bf841b3 | ||
|
|
e685304616 | ||
|
|
abbd23e332 | ||
|
|
37d39503bd | ||
|
|
8055572f19 | ||
|
|
7383a145b4 | ||
|
|
1ab009544f | ||
|
|
fb9e5c3d49 | ||
|
|
32232cb604 | ||
|
|
bd5f7bcad0 | ||
|
|
8e5d515e4c | ||
|
|
abf98ee5e7 | ||
|
|
61a9a453f4 | ||
|
|
3dd371161b | ||
|
|
88af20071b | ||
|
|
514b0108a5 | ||
|
|
8c2729493d | ||
|
|
47e968ddf9 | ||
|
|
4d5615f90d | ||
|
|
8283695735 | ||
|
|
8432eef4cf | ||
|
|
e0407759d4 | ||
|
|
2eae8d9e94 | ||
|
|
6efc39f902 | ||
|
|
0a708b79f0 | ||
|
|
36e4725565 | ||
|
|
5029618235 | ||
|
|
1595d987ed | ||
|
|
35cec2a64c | ||
|
|
6ee54646a8 | ||
|
|
3deaa814a4 | ||
|
|
4c458aeeac | ||
|
|
a99227d2ef | ||
|
|
10c95a0dee | ||
|
|
3094503b17 | ||
|
|
0e7944bd37 | ||
|
|
e16fc88e81 |
@@ -14,7 +14,8 @@
|
||||
账号:admin 密码:123456
|
||||
### 手机端uniapp前台
|
||||
<img width="40%" src="https://md.likeshop.cn/server/index.php?s=/api/attachment/visitFile&sign=260c0869d9ba7e692b2db1e216078241" /><br>
|
||||
|
||||
### 开发文档
|
||||
地址:[https://www.likeadmin.cn](https://www.likeadmin.cn "https://www.likeadmin.cn")
|
||||
|
||||
|
||||
## 👨💻简介
|
||||
@@ -52,6 +53,3 @@
|
||||
<div class="half">
|
||||
<img width="30%" src="https://md.likeshop.cn/server/index.php?s=/api/attachment/visitFile&sign=2dbac190afadfb6650a04c8af44980e1" /> <img width="30%" src="https://md.likeshop.cn/server/index.php?s=/api/attachment/visitFile&sign=73adbdb91ff5c43ca3e694a99effae7a" /> <img width="30%" src="https://md.likeshop.cn/server/index.php?s=/api/attachment/visitFile&sign=55b51eaebd7d696f96ccbf60d4694368" />
|
||||
</div><br>
|
||||
|
||||
### 🪐接口文档
|
||||
[点击这里进入更多更详细文档。](https://www.likeadmin.cn "点击这里进入更多更详细文档。")
|
||||
@@ -2,10 +2,10 @@ import request from '@/utils/request'
|
||||
|
||||
// 配置
|
||||
export function getConfig() {
|
||||
return request.get({ url: '/common/index/config' })
|
||||
return request.get({ url: '/index/config' })
|
||||
}
|
||||
|
||||
// 工作台主页
|
||||
export function getWorkbench() {
|
||||
return request.get({ url: '/common/index/console' })
|
||||
return request.get({ url: '/index/console' })
|
||||
}
|
||||
|
||||
@@ -1,39 +1,39 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
export function fileCateAdd(params: Record<string, any>) {
|
||||
return request.post({ url: '/common/album/cateAdd', params })
|
||||
return request.post({ url: '/albums/cateAdd', params })
|
||||
}
|
||||
|
||||
export function fileCateEdit(params: Record<string, any>) {
|
||||
return request.post({ url: '/common/album/cateRename', params })
|
||||
return request.post({ url: '/albums/cateRename', params })
|
||||
}
|
||||
|
||||
// 文件分类删除
|
||||
export function fileCateDelete(params: Record<string, any>) {
|
||||
return request.post({ url: '/common/album/cateDel', params })
|
||||
return request.post({ url: '/albums/cateDel', params })
|
||||
}
|
||||
|
||||
// 文件分类列表
|
||||
export function fileCateLists(params: Record<string, any>) {
|
||||
return request.get({ url: '/common/album/cateList', params })
|
||||
return request.get({ url: '/albums/cateList', params })
|
||||
}
|
||||
|
||||
// 文件列表
|
||||
export function fileList(params: Record<string, any>) {
|
||||
return request.get({ url: '/common/album/albumList', params })
|
||||
return request.get({ url: '/albums/albumList', params })
|
||||
}
|
||||
|
||||
// 文件删除
|
||||
export function fileDelete(params: Record<string, any>) {
|
||||
return request.post({ url: '/common/album/albumDel', params })
|
||||
return request.post({ url: '/albums/albumDel', params })
|
||||
}
|
||||
|
||||
// 文件移动
|
||||
export function fileMove(params: Record<string, any>) {
|
||||
return request.post({ url: '/common/album/albumMove', params })
|
||||
return request.post({ url: '/albums/albumMove', params })
|
||||
}
|
||||
|
||||
// 文件重命名
|
||||
export function fileRename(params: { id: number; name: string }) {
|
||||
return request.post({ url: '/common/album/albumRename', params })
|
||||
return request.post({ url: '/albums/albumRename', params })
|
||||
}
|
||||
|
||||
@@ -14,3 +14,28 @@ export function systemLogLists(params: any) {
|
||||
export function systemCache() {
|
||||
return request.get({ url: '/monitor/cache' })
|
||||
}
|
||||
|
||||
// 定时任务列表
|
||||
export function crontabLists(params: any) {
|
||||
return request.get({ url: '/crontab/list', params })
|
||||
}
|
||||
|
||||
// 添加定时任务
|
||||
export function crontabAdd(params: any) {
|
||||
return request.post({ url: '/crontab/add', params })
|
||||
}
|
||||
|
||||
// 定时任务详情
|
||||
export function crontabDetail(params: any) {
|
||||
return request.get({ url: '/crontab/detail', params })
|
||||
}
|
||||
|
||||
// 编辑定时任务
|
||||
export function crontabEdit(params: any) {
|
||||
return request.post({ url: '/crontab/edit', params })
|
||||
}
|
||||
|
||||
// 删除定时任务
|
||||
export function crontabDel(params: any) {
|
||||
return request.post({ url: '/crontab/del', params })
|
||||
}
|
||||
|
||||
@@ -6,10 +6,15 @@
|
||||
</div>
|
||||
</template>
|
||||
<script lang="ts" setup>
|
||||
const props = defineProps<{
|
||||
options: any[]
|
||||
value: any
|
||||
}>()
|
||||
const props = withDefaults(
|
||||
defineProps<{
|
||||
options: any[]
|
||||
value: any
|
||||
}>(),
|
||||
{
|
||||
options: () => []
|
||||
}
|
||||
)
|
||||
|
||||
const values = computed(() => {
|
||||
if (props.value !== null && typeof props.value !== 'undefined') {
|
||||
|
||||
@@ -110,7 +110,7 @@ const handleCreated = (editor: any) => {
|
||||
|
||||
<style lang="scss">
|
||||
.w-e-full-screen-container {
|
||||
z-index: 999999;
|
||||
z-index: 999;
|
||||
}
|
||||
.w-e-text-container [data-slate-editor] ul {
|
||||
list-style: disc;
|
||||
|
||||
@@ -24,10 +24,7 @@
|
||||
<overflow-tooltip :content="data.name" />
|
||||
</span>
|
||||
<el-dropdown
|
||||
v-perms="[
|
||||
'common:album:cateRename',
|
||||
'common:album:cateDel'
|
||||
]"
|
||||
v-perms="['albums:cateRename', 'albums:cateDel']"
|
||||
v-if="data.id > 0"
|
||||
:hide-on-click="false"
|
||||
>
|
||||
@@ -35,7 +32,7 @@
|
||||
<template #dropdown>
|
||||
<el-dropdown-menu>
|
||||
<popover-input
|
||||
v-perms="['common:album:cateRename']"
|
||||
v-perms="['albums:cateRename']"
|
||||
@confirm="handleEditCate($event, data.id)"
|
||||
size="default"
|
||||
:value="data.name"
|
||||
@@ -51,7 +48,7 @@
|
||||
</div>
|
||||
</popover-input>
|
||||
<div
|
||||
v-perms="['common:album:cateDel']"
|
||||
v-perms="['albums:cateDel']"
|
||||
@click="handleDeleteCate(data.id)"
|
||||
>
|
||||
<el-dropdown-item>删除分组</el-dropdown-item>
|
||||
@@ -68,7 +65,7 @@
|
||||
|
||||
<div class="flex justify-center p-2 border-t border-br">
|
||||
<popover-input
|
||||
v-perms="['common:album:cateAdd']"
|
||||
v-perms="['albums:cateAdd']"
|
||||
@confirm="handleAddCate"
|
||||
size="default"
|
||||
width="400px"
|
||||
@@ -85,7 +82,7 @@
|
||||
<div class="flex-1 flex">
|
||||
<upload
|
||||
v-if="type == 'image'"
|
||||
v-perms="['common:upload:image']"
|
||||
v-perms="['upload:image']"
|
||||
class="mr-3"
|
||||
:data="{ cid: cateId }"
|
||||
:type="type"
|
||||
@@ -96,7 +93,7 @@
|
||||
</upload>
|
||||
<upload
|
||||
v-if="type == 'video'"
|
||||
v-perms="['common:upload:video']"
|
||||
v-perms="['upload:video']"
|
||||
class="mr-3"
|
||||
:data="{ cid: cateId }"
|
||||
:type="type"
|
||||
@@ -106,7 +103,7 @@
|
||||
<el-button type="primary">本地上传</el-button>
|
||||
</upload>
|
||||
<el-button
|
||||
v-perms="['common:album:albumDel']"
|
||||
v-perms="['albums:albumDel']"
|
||||
v-if="mode == 'page'"
|
||||
:disabled="!select.length"
|
||||
@click.stop="batchFileDelete()"
|
||||
@@ -115,7 +112,7 @@
|
||||
</el-button>
|
||||
|
||||
<popup
|
||||
v-perms="['common:album:albumMove']"
|
||||
v-perms="['albums:albumMove']"
|
||||
v-if="mode == 'page'"
|
||||
class="ml-3"
|
||||
@confirm="batchFileMove"
|
||||
@@ -214,7 +211,7 @@
|
||||
<overflow-tooltip class="mt-1" :content="item.name" />
|
||||
<div class="operation-btns flex items-center">
|
||||
<popover-input
|
||||
v-perms="['common:album:albumRename']"
|
||||
v-perms="['albums:albumRename']"
|
||||
@confirm="handleFileRename($event, item.id)"
|
||||
size="default"
|
||||
:value="item.name"
|
||||
@@ -263,7 +260,7 @@
|
||||
<el-table-column prop="createTime" label="上传时间" min-width="100" />
|
||||
<el-table-column label="操作" width="150" fixed="right">
|
||||
<template #default="{ row }">
|
||||
<div class="inline-block" v-perms="['common:album:albumRename']">
|
||||
<div class="inline-block" v-perms="['albums:albumRename']">
|
||||
<popover-input
|
||||
@confirm="handleFileRename($event, row.id)"
|
||||
size="default"
|
||||
@@ -281,7 +278,7 @@
|
||||
查看
|
||||
</el-button>
|
||||
</div>
|
||||
<div class="inline-block" v-perms="['common:album:albumDel']">
|
||||
<div class="inline-block" v-perms="['albums:albumDel']">
|
||||
<el-button
|
||||
type="primary"
|
||||
link
|
||||
@@ -315,14 +312,14 @@
|
||||
</el-checkbox>
|
||||
</span>
|
||||
<el-button
|
||||
v-perms="['common:album:albumDel']"
|
||||
v-perms="['albums:albumDel']"
|
||||
:disabled="!select.length"
|
||||
@click="batchFileDelete()"
|
||||
>
|
||||
删除
|
||||
</el-button>
|
||||
<popup
|
||||
v-perms="['common:album:albumMove']"
|
||||
v-perms="['albums:albumMove']"
|
||||
class="ml-3 inline"
|
||||
@confirm="batchFileMove"
|
||||
:disabled="!select.length"
|
||||
|
||||
@@ -83,6 +83,7 @@ import FileItem from './file.vue'
|
||||
import Material from './index.vue'
|
||||
import Preview from './preview.vue'
|
||||
import useAppStore from '@/stores/modules/app'
|
||||
import { useThrottleFn } from '@vueuse/shared'
|
||||
export default defineComponent({
|
||||
components: {
|
||||
Popup,
|
||||
@@ -170,17 +171,21 @@ export default defineComponent({
|
||||
if (limit.value == -1) return null
|
||||
return limit.value - fileList.value.length
|
||||
})
|
||||
const handleConfirm = () => {
|
||||
const selectUri = select.value.map((item) =>
|
||||
props.excludeDomain ? item.path : item.uri
|
||||
)
|
||||
if (!isAdd.value) {
|
||||
fileList.value.splice(currentIndex.value, 1, selectUri.shift())
|
||||
} else {
|
||||
fileList.value = [...fileList.value, ...selectUri]
|
||||
}
|
||||
handleChange()
|
||||
}
|
||||
const handleConfirm = useThrottleFn(
|
||||
() => {
|
||||
const selectUri = select.value.map((item) =>
|
||||
props.excludeDomain ? item.path : item.uri
|
||||
)
|
||||
if (!isAdd.value) {
|
||||
fileList.value.splice(currentIndex.value, 1, selectUri.shift())
|
||||
} else {
|
||||
fileList.value = [...fileList.value, ...selectUri]
|
||||
}
|
||||
handleChange()
|
||||
},
|
||||
1000,
|
||||
false
|
||||
)
|
||||
const showPopup = (index: number) => {
|
||||
if (disabled.value) return
|
||||
if (index >= 0) {
|
||||
|
||||
@@ -79,9 +79,9 @@ export default defineComponent({
|
||||
setup(props, { emit }) {
|
||||
const userStore = useUserStore()
|
||||
const uploadRefs = shallowRef<InstanceType<typeof ElUpload>>()
|
||||
const action = ref(`${config.baseUrl}${config.urlPrefix}/common/upload/${props.type}`)
|
||||
const action = ref(`${config.baseUrl}${config.urlPrefix}/upload/${props.type}`)
|
||||
const headers = computed(() => ({
|
||||
token: userStore.token,
|
||||
['like-admin']: userStore.token,
|
||||
version: config.version
|
||||
}))
|
||||
const visible = ref(false)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
const config = {
|
||||
terminal: 1, //终端
|
||||
title: '后台管理系统', //网站默认标题
|
||||
version: '1.2.0', //版本号
|
||||
version: '1.3.3', //版本号
|
||||
baseUrl: `${import.meta.env.VITE_APP_BASE_URL || ''}/`, //请求接口域名
|
||||
urlPrefix: 'api', //请求默认前缀
|
||||
timeout: 10 * 1000 //请求超时时长
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
const defaultSetting = {
|
||||
showCrumb: true, // 是否显示面包屑
|
||||
showLogo: true, // 是否显示logo
|
||||
isUniqueOpened: false, //只展开一个一级菜单
|
||||
sideWidth: 200, //侧边栏宽度
|
||||
sideTheme: 'light', //侧边栏主题
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
<div class="navbar-item">
|
||||
<refresh />
|
||||
</div>
|
||||
<div class="flex items-center px-2" v-if="!isMobile">
|
||||
<div class="flex items-center px-2" v-if="!isMobile && settingStore.showCrumb">
|
||||
<breadcrumb />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -57,9 +57,23 @@
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="setting-item mb-5">
|
||||
<div class="text-tx-secondary mb-4">菜单栏宽度</div>
|
||||
<div><el-input-number v-model="sideWidth" :min="180" :max="250" /></div>
|
||||
<div class="setting-item mb-5 flex justify-between items-center">
|
||||
<div class="text-tx-secondary flex-none mr-3">菜单栏宽度</div>
|
||||
<div>
|
||||
<el-input-number v-model="sideWidth" :min="180" :max="250" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="setting-item mb-5 flex justify-between items-center">
|
||||
<div class="text-tx-secondary flex-none mr-3">显示LOGO</div>
|
||||
<div>
|
||||
<el-switch v-model="showLogo" :active-value="true" :inactive-value="false" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="setting-item mb-5 flex justify-between items-center">
|
||||
<div class="text-tx-secondary flex-none mr-3">显示面包屑</div>
|
||||
<div>
|
||||
<el-switch v-model="showCrumb" :active-value="true" :inactive-value="false" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="setting-item mb-5 flex justify-between items-center">
|
||||
<el-button @click="resetTheme">重置主题</el-button>
|
||||
@@ -158,6 +172,30 @@ const theme = computed({
|
||||
}
|
||||
})
|
||||
|
||||
const showLogo = computed({
|
||||
get() {
|
||||
return settingStore.showLogo
|
||||
},
|
||||
set(value) {
|
||||
settingStore.setSetting({
|
||||
key: 'showLogo',
|
||||
value
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
const showCrumb = computed({
|
||||
get() {
|
||||
return settingStore.showCrumb
|
||||
},
|
||||
set(value) {
|
||||
settingStore.setSetting({
|
||||
key: 'showCrumb',
|
||||
value
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
const isDark = useDark()
|
||||
const themeChange = () => {
|
||||
settingStore.setTheme(isDark.value)
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="side" :style="sideStyle">
|
||||
<side-logo :show-title="!isCollapsed" :theme="sideTheme" />
|
||||
<side-logo v-if="settingStore.showLogo" :show-title="!isCollapsed" :theme="sideTheme" />
|
||||
<side-menu
|
||||
:routes="routes"
|
||||
:isCollapsed="isCollapsed"
|
||||
|
||||
@@ -26,7 +26,10 @@ router.beforeEach(async (to, from, next) => {
|
||||
document.title = to.meta.title ?? config.title
|
||||
const userStore = useUserStore()
|
||||
const tabsStore = useTabsStore()
|
||||
if (userStore.token) {
|
||||
if (whiteList.includes(to.path)) {
|
||||
// 在免登录白名单,直接进入
|
||||
next()
|
||||
} else if (userStore.token) {
|
||||
// 获取用户信息
|
||||
const hasGetUserInfo = Object.keys(userStore.userInfo).length !== 0
|
||||
if (hasGetUserInfo) {
|
||||
@@ -71,9 +74,6 @@ router.beforeEach(async (to, from, next) => {
|
||||
next({ path: loginPath, query: { redirect: to.fullPath } })
|
||||
}
|
||||
}
|
||||
} else if (whiteList.includes(to.path)) {
|
||||
// 在免登录白名单,直接进入
|
||||
next()
|
||||
} else {
|
||||
next({ path: loginPath, query: { redirect: to.fullPath } })
|
||||
}
|
||||
|
||||
@@ -21,7 +21,7 @@ const axiosHooks: AxiosHooks = {
|
||||
// 添加token
|
||||
if (withToken) {
|
||||
const token = getToken()
|
||||
headers.token = token
|
||||
headers['like-admin'] = token
|
||||
}
|
||||
// POST请求下如果无data,则将params视为data
|
||||
if (
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
@keyup.enter="handleEnter"
|
||||
>
|
||||
<template #prepend>
|
||||
<icon name="el-icon-Avatar" />
|
||||
<icon name="el-icon-User" />
|
||||
</template>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
@@ -99,7 +99,7 @@ const handleLogin = async () => {
|
||||
// 记住账号,缓存
|
||||
cache.set(ACCOUNT_KEY, {
|
||||
remember: remAccount.value,
|
||||
account: formData.account
|
||||
account: remAccount.value ? formData.account : ''
|
||||
})
|
||||
await userStore.login(formData)
|
||||
const {
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
</el-form-item>
|
||||
<el-form-item label="排序" prop="sort">
|
||||
<div>
|
||||
<el-input-number v-model="formData.sort" :min="0" />
|
||||
<el-input-number v-model="formData.sort" :min="0" :max="9999" />
|
||||
<div class="form-tips">默认为0, 数值越大越排前</div>
|
||||
</div>
|
||||
</el-form-item>
|
||||
|
||||
@@ -81,7 +81,7 @@
|
||||
</el-form-item>
|
||||
<el-form-item label="排序" prop="sort">
|
||||
<div>
|
||||
<el-input-number v-model="formData.sort" :min="0" />
|
||||
<el-input-number v-model="formData.sort" :min="0" :max="9999" />
|
||||
<div class="form-tips">默认为0, 数值越大越排前</div>
|
||||
</div>
|
||||
</el-form-item>
|
||||
|
||||
@@ -44,6 +44,12 @@ export const rules = reactive<FormRules>({
|
||||
required: true,
|
||||
message: '必填项不能为空',
|
||||
trigger: ['blur', 'change']
|
||||
},
|
||||
{
|
||||
pattern:
|
||||
/^([hH][tT]{2}[pP]:\/\/|[hH][tT]{2}[pP][sS]:\/\/)(([A-Za-z0-9-~]+)\.)+([A-Za-z0-9-~\/])+$/,
|
||||
message: '请输入合法的网址链接',
|
||||
trigger: ['blur', 'change']
|
||||
}
|
||||
],
|
||||
appId: [
|
||||
@@ -121,7 +127,6 @@ export const useMenuOa = (ref: any) => {
|
||||
await refs[i].menuFormRef.validate()
|
||||
} catch (error) {
|
||||
menuIndex.value = i
|
||||
feedback.msgError(`菜单${i + 1}必填项不能为空~`)
|
||||
return
|
||||
}
|
||||
}
|
||||
@@ -137,7 +142,6 @@ export const useMenuOa = (ref: any) => {
|
||||
await refs[i].menuFormRef.validate()
|
||||
} catch (error) {
|
||||
menuIndex.value = i
|
||||
feedback.msgError(`菜单${i + 1}必填项不能为空~`)
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,7 +5,6 @@
|
||||
:title="popupTitle"
|
||||
:async="true"
|
||||
width="500px"
|
||||
:clickModalClose="true"
|
||||
@confirm="handleSubmit"
|
||||
@close="handleClose"
|
||||
>
|
||||
@@ -72,7 +71,7 @@
|
||||
</el-form-item> -->
|
||||
<el-form-item label="排序">
|
||||
<div class="flex-1">
|
||||
<el-input-number v-model="formData.sort" :min="0"/>
|
||||
<el-input-number v-model="formData.sort" :min="0" :max="9999" />
|
||||
</div>
|
||||
</el-form-item>
|
||||
<el-form-item label="启用状态">
|
||||
|
||||
@@ -15,7 +15,11 @@
|
||||
</el-form-item>
|
||||
<el-form-item label="账号:">
|
||||
{{ formData.username }}
|
||||
<popover-input class="ml-[10px]" @confirm="handleEdit($event, 'username')">
|
||||
<popover-input
|
||||
class="ml-[10px]"
|
||||
:limit="32"
|
||||
@confirm="handleEdit($event, 'username')"
|
||||
>
|
||||
<el-button type="primary" link v-perms="['user:edit']">
|
||||
<icon name="el-icon-EditPen" />
|
||||
</el-button>
|
||||
@@ -23,7 +27,11 @@
|
||||
</el-form-item>
|
||||
<el-form-item label="真实姓名:">
|
||||
{{ formData.realName || '-' }}
|
||||
<popover-input class="ml-[10px]" @confirm="handleEdit($event, 'realName')">
|
||||
<popover-input
|
||||
class="ml-[10px]"
|
||||
:limit="32"
|
||||
@confirm="handleEdit($event, 'realName')"
|
||||
>
|
||||
<el-button type="primary" link v-perms="['user:edit']">
|
||||
<icon name="el-icon-EditPen" />
|
||||
</el-button>
|
||||
|
||||
@@ -1,37 +1,36 @@
|
||||
<template>
|
||||
<div>
|
||||
<div>
|
||||
<del-wrap
|
||||
class="max-w-[400px]"
|
||||
v-for="(item, index) in modelValue"
|
||||
:key="index"
|
||||
@close="handleDelete(index)"
|
||||
>
|
||||
<div class="bg-fill-light flex items-center w-full p-4 mb-4">
|
||||
<material-picker
|
||||
v-model="item.image"
|
||||
upload-class="bg-body"
|
||||
size="60px"
|
||||
exclude-domain
|
||||
>
|
||||
<template #upload>
|
||||
<div class="upload-btn w-[60px] h-[60px]">
|
||||
<icon name="el-icon-Plus" :size="20" />
|
||||
<draggable class="draggable" v-model="navLists" animation="300">
|
||||
<template v-slot:item="{ element: item, index }">
|
||||
<del-wrap class="max-w-[400px]" :key="index" @close="handleDelete(index)">
|
||||
<div class="bg-fill-light flex items-center w-full p-4 mb-4 cursor-move">
|
||||
<material-picker
|
||||
v-model="item.image"
|
||||
upload-class="bg-body"
|
||||
size="60px"
|
||||
exclude-domain
|
||||
>
|
||||
<template #upload>
|
||||
<div class="upload-btn w-[60px] h-[60px]">
|
||||
<icon name="el-icon-Plus" :size="20" />
|
||||
</div>
|
||||
</template>
|
||||
</material-picker>
|
||||
<div class="ml-3 flex-1">
|
||||
<div class="flex">
|
||||
<span class="text-tx-regular flex-none mr-3">名称</span>
|
||||
<el-input v-model="item.name" placeholder="请输入名称" />
|
||||
</div>
|
||||
<div class="flex mt-[18px]">
|
||||
<span class="text-tx-regular flex-none mr-3">链接</span>
|
||||
<link-picker v-model="item.link" />
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
</material-picker>
|
||||
<div class="ml-3 flex-1">
|
||||
<div class="flex">
|
||||
<span class="text-tx-regular flex-none mr-3">名称</span>
|
||||
<el-input v-model="item.name" placeholder="请输入名称" />
|
||||
</div>
|
||||
<div class="flex mt-[18px]">
|
||||
<span class="text-tx-regular flex-none mr-3">链接</span>
|
||||
<link-picker v-model="item.link" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</del-wrap>
|
||||
</del-wrap>
|
||||
</template>
|
||||
</draggable>
|
||||
</div>
|
||||
<div>
|
||||
<el-button type="primary" @click="handleAdd">添加</el-button>
|
||||
@@ -41,7 +40,7 @@
|
||||
<script lang="ts" setup>
|
||||
import feedback from '@/utils/feedback'
|
||||
import type { PropType } from 'vue'
|
||||
|
||||
import Draggable from 'vuedraggable'
|
||||
const props = defineProps({
|
||||
modelValue: {
|
||||
type: Array as PropType<any[]>,
|
||||
@@ -57,9 +56,19 @@ const props = defineProps({
|
||||
}
|
||||
})
|
||||
|
||||
const emit = defineEmits(['update:modelValue'])
|
||||
const navLists = computed({
|
||||
get() {
|
||||
return props.modelValue
|
||||
},
|
||||
set(value) {
|
||||
emit('update:modelValue', value)
|
||||
}
|
||||
})
|
||||
|
||||
const handleAdd = () => {
|
||||
if (props.modelValue?.length < props.max) {
|
||||
props.modelValue.push({
|
||||
navLists.value.push({
|
||||
image: '',
|
||||
name: '导航名称',
|
||||
link: {}
|
||||
@@ -72,7 +81,7 @@ const handleDelete = (index: number) => {
|
||||
if (props.modelValue?.length <= props.min) {
|
||||
return feedback.msgError(`最少保留${props.min}个`)
|
||||
}
|
||||
props.modelValue.splice(index, 1)
|
||||
navLists.value.splice(index, 1)
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div>
|
||||
<el-form label-width="70px">
|
||||
<el-form-item label="是否启用">
|
||||
<el-form-item label="是否启用" v-if="type == 'mobile'">
|
||||
<el-radio-group v-model="content.enabled">
|
||||
<el-radio :label="1">开启</el-radio>
|
||||
<el-radio :label="0">停用</el-radio>
|
||||
@@ -10,28 +10,36 @@
|
||||
<el-form-item label="图片设置">
|
||||
<div class="flex-1">
|
||||
<div class="form-tips">最多添加5张,建议图片尺寸:750px*340px</div>
|
||||
<del-wrap
|
||||
v-for="(item, index) in content.data"
|
||||
:key="index"
|
||||
@close="handleDelete(index)"
|
||||
class="max-w-[400px]"
|
||||
>
|
||||
<div class="bg-fill-light flex items-center w-full p-4 mt-4">
|
||||
<material-picker
|
||||
v-model="item.image"
|
||||
upload-class="bg-body"
|
||||
exclude-domain
|
||||
/>
|
||||
<div class="ml-3 flex-1">
|
||||
<el-form-item label="图片名称">
|
||||
<el-input v-model="item.name" placeholder="请输入名称" />
|
||||
</el-form-item>
|
||||
<el-form-item class="mt-[18px]" label="图片链接">
|
||||
<link-picker v-model="item.link" />
|
||||
</el-form-item>
|
||||
</div>
|
||||
</div>
|
||||
</del-wrap>
|
||||
<draggable class="draggable" v-model="content.data" animation="300">
|
||||
<template v-slot:item="{ element: item, index }">
|
||||
<del-wrap
|
||||
:key="index"
|
||||
@close="handleDelete(index)"
|
||||
class="max-w-[400px]"
|
||||
>
|
||||
<div
|
||||
class="bg-fill-light flex items-center w-full p-4 mt-4 cursor-move"
|
||||
>
|
||||
<material-picker
|
||||
v-model="item.image"
|
||||
upload-class="bg-body"
|
||||
exclude-domain
|
||||
/>
|
||||
<div class="ml-3 flex-1">
|
||||
<el-form-item label="图片名称">
|
||||
<el-input
|
||||
v-model="item.name"
|
||||
placeholder="请输入名称"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item class="mt-[18px]" label="图片链接">
|
||||
<link-picker v-model="item.link" />
|
||||
</el-form-item>
|
||||
</div>
|
||||
</div>
|
||||
</del-wrap>
|
||||
</template>
|
||||
</draggable>
|
||||
</div>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="content.data?.length < limit">
|
||||
@@ -44,6 +52,7 @@
|
||||
import feedback from '@/utils/feedback'
|
||||
import type { PropType } from 'vue'
|
||||
import type options from './options'
|
||||
import Draggable from 'vuedraggable'
|
||||
const limit = 5
|
||||
type OptionsType = ReturnType<typeof options>
|
||||
const props = defineProps({
|
||||
|
||||
@@ -10,28 +10,36 @@
|
||||
<el-form-item label="图片设置">
|
||||
<div class="flex-1">
|
||||
<div class="form-tips">最多添加5张,建议图片尺寸:750px*200px</div>
|
||||
<del-wrap
|
||||
v-for="(item, index) in content.data"
|
||||
:key="index"
|
||||
@close="handleDelete(index)"
|
||||
class="max-w-[400px]"
|
||||
>
|
||||
<div class="bg-fill-light flex items-center w-full p-4 mt-4">
|
||||
<material-picker
|
||||
v-model="item.image"
|
||||
upload-class="bg-body"
|
||||
exclude-domain
|
||||
/>
|
||||
<div class="ml-3 flex-1">
|
||||
<el-form-item label="图片名称">
|
||||
<el-input v-model="item.name" placeholder="请输入名称" />
|
||||
</el-form-item>
|
||||
<el-form-item class="mt-[18px]" label="图片链接">
|
||||
<link-picker v-model="item.link" />
|
||||
</el-form-item>
|
||||
</div>
|
||||
</div>
|
||||
</del-wrap>
|
||||
<draggable class="draggable" v-model="content.data" animation="300">
|
||||
<template v-slot:item="{ element: item, index }">
|
||||
<del-wrap
|
||||
:key="index"
|
||||
@close="handleDelete(index)"
|
||||
class="max-w-[400px]"
|
||||
>
|
||||
<div
|
||||
class="bg-fill-light flex items-center w-full p-4 mt-4 cursor-move"
|
||||
>
|
||||
<material-picker
|
||||
v-model="item.image"
|
||||
upload-class="bg-body"
|
||||
exclude-domain
|
||||
/>
|
||||
<div class="ml-3 flex-1">
|
||||
<el-form-item label="图片名称">
|
||||
<el-input
|
||||
v-model="item.name"
|
||||
placeholder="请输入名称"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item class="mt-[18px]" label="图片链接">
|
||||
<link-picker v-model="item.link" />
|
||||
</el-form-item>
|
||||
</div>
|
||||
</div>
|
||||
</del-wrap>
|
||||
</template>
|
||||
</draggable>
|
||||
</div>
|
||||
</el-form-item>
|
||||
<el-form-item v-if="content.data?.length < limit">
|
||||
@@ -44,6 +52,7 @@
|
||||
import feedback from '@/utils/feedback'
|
||||
import type { PropType } from 'vue'
|
||||
import type options from './options'
|
||||
import Draggable from 'vuedraggable'
|
||||
const limit = 5
|
||||
type OptionsType = ReturnType<typeof options>
|
||||
const props = defineProps({
|
||||
|
||||
@@ -47,7 +47,7 @@ const menus: Record<
|
||||
[pagesTypeEnum.HOME]: {
|
||||
id: 1,
|
||||
pageType: 1,
|
||||
name: '商城首页',
|
||||
name: '首页装修',
|
||||
pageData: generatePageData(['search', 'banner', 'nav', 'news'])
|
||||
},
|
||||
[pagesTypeEnum.USER]: {
|
||||
|
||||
@@ -188,7 +188,7 @@ const onMove = (e: any) => {
|
||||
|
||||
const getData = async () => {
|
||||
const data = await getDecorateTabbar()
|
||||
tabbar.list = data.list.map((item: any) => ({ ...item, link: JSON.parse(item.link) }))
|
||||
tabbar.list = data.list
|
||||
tabbar.style = data.style
|
||||
}
|
||||
const setData = async () => {
|
||||
|
||||
@@ -26,17 +26,27 @@
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="部门名称" prop="name">
|
||||
<el-input v-model="formData.name" placeholder="请输入部门名称" clearable />
|
||||
<el-input
|
||||
v-model="formData.name"
|
||||
placeholder="请输入部门名称"
|
||||
clearable
|
||||
:maxlength="100"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="负责人" prop="duty">
|
||||
<el-input v-model="formData.duty" placeholder="请输入负责人姓名" clearable />
|
||||
<el-input
|
||||
v-model="formData.duty"
|
||||
placeholder="请输入负责人姓名"
|
||||
clearable
|
||||
:maxlength="30"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="联系电话" prop="mobile">
|
||||
<el-input v-model="formData.mobile" placeholder="请输入联系电话" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="排序" prop="sort">
|
||||
<div>
|
||||
<el-input-number v-model="formData.sort" :min="0" />
|
||||
<el-input-number v-model="formData.sort" :min="0" :max="9999" />
|
||||
<div class="form-tips">默认为0, 数值越大越排前</div>
|
||||
</div>
|
||||
</el-form-item>
|
||||
|
||||
@@ -10,14 +10,19 @@
|
||||
>
|
||||
<el-form ref="formRef" :model="formData" label-width="84px" :rules="formRules">
|
||||
<el-form-item label="岗位名称" prop="name">
|
||||
<el-input v-model="formData.name" placeholder="请输入岗位名称" clearable />
|
||||
<el-input
|
||||
v-model="formData.name"
|
||||
placeholder="请输入岗位名称"
|
||||
clearable
|
||||
:maxlength="100"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="岗位编码" prop="code">
|
||||
<el-input v-model="formData.code" placeholder="请输入岗位编码" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="排序" prop="sort">
|
||||
<div>
|
||||
<el-input-number v-model="formData.sort" :min="0" />
|
||||
<el-input-number v-model="formData.sort" :min="0" :max="9999" />
|
||||
<div class="form-tips">默认为0, 数值越大越排前</div>
|
||||
</div>
|
||||
</el-form-item>
|
||||
|
||||
@@ -28,18 +28,19 @@
|
||||
<el-form-item label="名称" prop="nickname">
|
||||
<el-input v-model="formData.nickname" placeholder="请输入名称" clearable />
|
||||
</el-form-item>
|
||||
<el-form-item label="归属部门" prop="deptId">
|
||||
<el-form-item label="归属部门" prop="deptIds">
|
||||
<el-tree-select
|
||||
class="flex-1"
|
||||
v-model="formData.deptId"
|
||||
v-model="formData.deptIds"
|
||||
:data="optionsData.dept"
|
||||
clearable
|
||||
node-key="id"
|
||||
multiple
|
||||
:props="{
|
||||
value: 'id',
|
||||
label: 'name',
|
||||
disabled(data: any) {
|
||||
return data.isStop
|
||||
return !!data.isStop
|
||||
}
|
||||
}"
|
||||
check-strictly
|
||||
@@ -47,11 +48,12 @@
|
||||
placeholder="请选择上级部门"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="岗位" prop="deptId">
|
||||
<el-form-item label="岗位" prop="postIds">
|
||||
<el-select
|
||||
class="flex-1"
|
||||
clearable
|
||||
v-model="formData.postId"
|
||||
multiple
|
||||
v-model="formData.postIds"
|
||||
placeholder="请选择岗位"
|
||||
>
|
||||
<el-option
|
||||
@@ -63,10 +65,11 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="角色" prop="role">
|
||||
<el-form-item label="角色" prop="roleIds">
|
||||
<el-select
|
||||
v-model="formData.role"
|
||||
v-model="formData.roleIds"
|
||||
:disabled="isRoot"
|
||||
multiple
|
||||
class="flex-1"
|
||||
clearable
|
||||
placeholder="请选择角色"
|
||||
@@ -76,7 +79,7 @@
|
||||
v-for="(item, index) in optionsData.role"
|
||||
:key="index"
|
||||
:label="item.name"
|
||||
:value="String(item.id)"
|
||||
:value="item.id"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
@@ -135,12 +138,12 @@ const popupTitle = computed(() => {
|
||||
})
|
||||
|
||||
const formData = reactive({
|
||||
id: '',
|
||||
id: 0,
|
||||
username: '',
|
||||
nickname: '',
|
||||
deptId: '',
|
||||
postId: '',
|
||||
role: '',
|
||||
deptIds: [],
|
||||
postIds: [],
|
||||
roleIds: [],
|
||||
avatar: '',
|
||||
password: '',
|
||||
passwordConfirm: '',
|
||||
@@ -149,7 +152,7 @@ const formData = reactive({
|
||||
})
|
||||
|
||||
const isRoot = computed(() => {
|
||||
return formData.role == '0'
|
||||
return formData.id == 1
|
||||
})
|
||||
|
||||
const passwordConfirmValidator = (rule: object, value: string, callback: any) => {
|
||||
@@ -174,8 +177,9 @@ const formRules = reactive({
|
||||
trigger: ['blur']
|
||||
}
|
||||
],
|
||||
role: [
|
||||
roleIds: [
|
||||
{
|
||||
type: 'array',
|
||||
required: true,
|
||||
message: '请选择角色',
|
||||
trigger: ['blur']
|
||||
@@ -231,6 +235,13 @@ const open = (type = 'add') => {
|
||||
}
|
||||
|
||||
const setFormData = async (row: any) => {
|
||||
formRules.password = []
|
||||
formRules.passwordConfirm = [
|
||||
{
|
||||
validator: passwordConfirmValidator,
|
||||
trigger: 'blur'
|
||||
}
|
||||
]
|
||||
const data = await adminDetail({
|
||||
id: row.id
|
||||
})
|
||||
@@ -239,16 +250,7 @@ const setFormData = async (row: any) => {
|
||||
//@ts-ignore
|
||||
formData[key] = data[key]
|
||||
}
|
||||
Number(formData.deptId) == 0 && (formData.deptId = '')
|
||||
Number(formData.postId) == 0 && (formData.postId = '')
|
||||
}
|
||||
formRules.password = []
|
||||
formRules.passwordConfirm = [
|
||||
{
|
||||
validator: passwordConfirmValidator,
|
||||
trigger: 'blur'
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
const handleClose = () => {
|
||||
|
||||
@@ -52,8 +52,18 @@
|
||||
</el-table-column>
|
||||
<el-table-column label="账号" prop="username" min-width="100" />
|
||||
<el-table-column label="名称" prop="nickname" min-width="100" />
|
||||
<el-table-column label="角色" prop="role" min-width="100" />
|
||||
<el-table-column label="部门" prop="dept" min-width="100" />
|
||||
<el-table-column
|
||||
label="角色"
|
||||
prop="role"
|
||||
show-tooltip-when-overflow
|
||||
min-width="100"
|
||||
/>
|
||||
<el-table-column
|
||||
label="部门"
|
||||
prop="dept"
|
||||
show-tooltip-when-overflow
|
||||
min-width="100"
|
||||
/>
|
||||
<el-table-column label="创建时间" prop="createTime" min-width="180" />
|
||||
<el-table-column label="最近登录时间" prop="lastLoginTime" min-width="180" />
|
||||
<el-table-column label="最近登录IP" prop="lastLoginIp" min-width="120" />
|
||||
|
||||
@@ -166,7 +166,7 @@
|
||||
</el-form-item>
|
||||
<el-form-item label="菜单排序" prop="menuSort">
|
||||
<div>
|
||||
<el-input-number v-model="formData.menuSort" />
|
||||
<el-input-number v-model="formData.menuSort" :max="9999" />
|
||||
<div class="form-tips">数值越大越排前</div>
|
||||
</div>
|
||||
</el-form-item>
|
||||
@@ -224,7 +224,7 @@ const formData = reactive({
|
||||
//路由参数
|
||||
params: '',
|
||||
//是否缓存 0=否, 1=是
|
||||
isCache: 1,
|
||||
isCache: 0,
|
||||
//是否显示 0=否, 1=是
|
||||
isShow: 1,
|
||||
//是否禁用 0=否, 1=是
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
</el-form-item>
|
||||
<el-form-item label="排序" prop="sort">
|
||||
<div>
|
||||
<el-input-number v-model="formData.sort" :min="0" />
|
||||
<el-input-number v-model="formData.sort" :min="0" :max="9999" />
|
||||
<div class="form-tips">数值越大越排前</div>
|
||||
</div>
|
||||
</el-form-item>
|
||||
|
||||
142
admin/src/views/setting/system/scheduled_task/edit.vue
Normal file
142
admin/src/views/setting/system/scheduled_task/edit.vue
Normal file
@@ -0,0 +1,142 @@
|
||||
<template>
|
||||
<div class="article-edit">
|
||||
<el-card class="!border-none" shadow="never">
|
||||
<el-page-header :content="$route.meta.title" @back="$router.back()" />
|
||||
</el-card>
|
||||
<el-card class="mt-4 !border-none" shadow="never">
|
||||
<el-form
|
||||
ref="formRef"
|
||||
class="ls-form"
|
||||
:model="formData"
|
||||
label-width="96px"
|
||||
:rules="rules"
|
||||
>
|
||||
<el-form-item label="任务名称" prop="name">
|
||||
<div class="w-80">
|
||||
<el-input
|
||||
v-model="formData.name"
|
||||
placeholder="请输入任务名称"
|
||||
maxlength="30"
|
||||
clearable
|
||||
/>
|
||||
</div>
|
||||
</el-form-item>
|
||||
<el-form-item label="任务分组" prop="groups">
|
||||
<el-select
|
||||
class="w-80"
|
||||
v-model="formData.groups"
|
||||
clearable
|
||||
placeholder="请选择任务分组"
|
||||
>
|
||||
<el-option label="默认" value="default" />
|
||||
<el-option label="系统" value="system" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="调用方法" prop="command">
|
||||
<div class="w-80">
|
||||
<el-input
|
||||
v-model="formData.command"
|
||||
placeholder="请输入调用目标字符串"
|
||||
clearable
|
||||
/>
|
||||
</div>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="cron表达式" prop="rules">
|
||||
<div class="w-80">
|
||||
<el-input v-model="formData.rules" placeholder="请输入cron执行表达式" />
|
||||
</div>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="备注" prop="remark">
|
||||
<div class="w-80">
|
||||
<el-input
|
||||
v-model="formData.remark"
|
||||
type="textarea"
|
||||
:autosize="{ minRows: 3, maxRows: 6 }"
|
||||
:maxlength="200"
|
||||
show-word-limit
|
||||
clearable
|
||||
/>
|
||||
</div>
|
||||
</el-form-item>
|
||||
<el-form-item label="执行策略" prop="groups">
|
||||
<el-radio-group v-model="formData.strategy">
|
||||
<el-radio :label="1"> 立即执行 </el-radio>
|
||||
<el-radio :label="2"> 执行一次 </el-radio>
|
||||
<el-radio :label="3"> 放弃执行 </el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<el-form-item label="是否并发" prop="concurrent">
|
||||
<el-radio-group v-model="formData.concurrent">
|
||||
<el-radio :label="1"> 允许 </el-radio>
|
||||
<el-radio :label="0"> 禁止 </el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<el-form-item label="状态">
|
||||
<el-switch v-model="formData.status" :active-value="1" :inactive-value="2" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</el-card>
|
||||
<footer-btns>
|
||||
<el-button type="primary" @click="handleSave">保存</el-button>
|
||||
</footer-btns>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts" setup name="scheduledTaskEdit">
|
||||
import type { FormInstance } from 'element-plus'
|
||||
import { crontabAdd, crontabEdit, crontabDetail } from '@/api/setting/system'
|
||||
import useMultipleTabs from '@/hooks/useMultipleTabs'
|
||||
import feedback from '@/utils/feedback'
|
||||
|
||||
const route = useRoute()
|
||||
const router = useRouter()
|
||||
const formData = reactive({
|
||||
id: '',
|
||||
name: '',
|
||||
groups: '',
|
||||
command: '',
|
||||
rules: '',
|
||||
status: 1,
|
||||
strategy: 1,
|
||||
concurrent: 0,
|
||||
remark: ''
|
||||
})
|
||||
|
||||
const { removeTab } = useMultipleTabs()
|
||||
const formRef = shallowRef<FormInstance>()
|
||||
const rules = reactive({
|
||||
name: [{ required: true, message: '请输入任务名称' }],
|
||||
command: [{ required: true, message: '请输入调用目标字符串' }],
|
||||
rules: [{ required: true, message: '请输入cron执行表达式' }]
|
||||
})
|
||||
|
||||
const getDetails = async () => {
|
||||
const data = await crontabDetail({
|
||||
id: route.query.id
|
||||
})
|
||||
Object.keys(formData).forEach((key) => {
|
||||
//@ts-ignore
|
||||
formData[key] = data[key]
|
||||
})
|
||||
}
|
||||
|
||||
const handleSave = async () => {
|
||||
await formRef.value?.validate()
|
||||
if (route.query.id) {
|
||||
await crontabEdit(formData)
|
||||
} else {
|
||||
await crontabAdd(formData)
|
||||
}
|
||||
feedback.msgSuccess('操作成功')
|
||||
removeTab()
|
||||
router.back()
|
||||
}
|
||||
onMounted(async () => {
|
||||
if (!route.query.id) {
|
||||
return
|
||||
}
|
||||
await getDetails()
|
||||
})
|
||||
</script>
|
||||
111
admin/src/views/setting/system/scheduled_task/index.vue
Normal file
111
admin/src/views/setting/system/scheduled_task/index.vue
Normal file
@@ -0,0 +1,111 @@
|
||||
<template>
|
||||
<div>
|
||||
<el-card shadow="never" class="!border-none">
|
||||
<router-link
|
||||
v-perms="['crontab/add', 'crontab/add:edit']"
|
||||
:to="getRoutePath('crontab/add:edit')"
|
||||
>
|
||||
<el-button type="primary" class="mb-[16px]">
|
||||
<template #icon>
|
||||
<icon name="el-icon-Plus" />
|
||||
</template>
|
||||
新增
|
||||
</el-button>
|
||||
</router-link>
|
||||
|
||||
<el-table
|
||||
ref="paneTable"
|
||||
class="m-t-24"
|
||||
:data="pager.lists"
|
||||
v-loading="pager.loading"
|
||||
style="width: 100%"
|
||||
>
|
||||
<el-table-column prop="name" label="名称" min-width="120" />
|
||||
<el-table-column prop="groups" label="分组" min-width="100">
|
||||
<template #default="{ row }">
|
||||
<dict-value
|
||||
:value="row.groups"
|
||||
:options="[
|
||||
{
|
||||
name: '默认',
|
||||
value: 'default'
|
||||
},
|
||||
{
|
||||
name: '系统',
|
||||
value: 'system'
|
||||
}
|
||||
]"
|
||||
/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="command" label="调用目标字符串" min-width="100" />
|
||||
<el-table-column prop="rules" label="cron表达式" min-width="100" />
|
||||
<el-table-column prop="status" label="状态" min-width="100">
|
||||
<template #default="{ row }">
|
||||
<el-tag v-if="row.status == 1" type="success">运行中</el-tag>
|
||||
<el-tag v-if="row.status == 2" type="info">已停止</el-tag>
|
||||
<el-tag v-if="row.status == 3" type="danger">错误</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="error" label="错误信息" min-width="120" />
|
||||
<el-table-column label="最后执行时间" prop="endTime" min-width="180" />
|
||||
<el-table-column prop="taskTime" label="执行耗时(ms)" min-width="100" />
|
||||
|
||||
<el-table-column label="操作" width="120" fixed="right">
|
||||
<template #default="{ row }">
|
||||
<div class="flex">
|
||||
<el-button type="primary" link>
|
||||
<router-link
|
||||
v-perms="['crontab/edit', 'crontab/add:edit']"
|
||||
:to="{
|
||||
path: getRoutePath('crontab/add:edit'),
|
||||
query: {
|
||||
id: row.id
|
||||
}
|
||||
}"
|
||||
>
|
||||
<el-button type="primary" link> 编辑 </el-button>
|
||||
</router-link>
|
||||
</el-button>
|
||||
<el-button
|
||||
v-perms="['crontab/delete']"
|
||||
type="danger"
|
||||
link
|
||||
@click="handleDelete(row.id)"
|
||||
>
|
||||
删除
|
||||
</el-button>
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
||||
<div class="flex justify-end mt-4">
|
||||
<pagination v-model="pager" @change="getLists" />
|
||||
</div>
|
||||
</el-card>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script lang="ts" setup name="scheduledTask">
|
||||
import { crontabLists, crontabDel } from '@/api/setting/system'
|
||||
import { usePaging } from '@/hooks/usePaging'
|
||||
import { getRoutePath } from '@/router'
|
||||
import feedback from '@/utils/feedback'
|
||||
|
||||
const { pager, getLists } = usePaging({
|
||||
fetchFun: crontabLists,
|
||||
params: {}
|
||||
})
|
||||
|
||||
const handleDelete = async (id: number) => {
|
||||
await feedback.confirm('确定要删除?')
|
||||
await crontabDel({ id })
|
||||
feedback.msgSuccess('删除成功')
|
||||
getLists()
|
||||
}
|
||||
|
||||
getLists()
|
||||
</script>
|
||||
|
||||
<style lang="scss"></style>
|
||||
@@ -84,7 +84,9 @@ const handleDelete = (index: number) => {
|
||||
|
||||
// 设置备案信息
|
||||
const handleSubmit = async () => {
|
||||
await setCopyright(formData.value)
|
||||
await setCopyright({
|
||||
list: formData.value
|
||||
})
|
||||
feedback.msgSuccess('操作成功')
|
||||
getData()
|
||||
}
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
</el-form-item>
|
||||
</el-card>
|
||||
<el-card shadow="never" class="!border-none mt-4">
|
||||
<div class="text-xl font-medium mb-[20px]">商城设置</div>
|
||||
<div class="text-xl font-medium mb-[20px]">前台设置</div>
|
||||
<el-form-item label="商城名称" prop="shopName">
|
||||
<div class="w-80">
|
||||
<el-input
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 84 KiB |
BIN
admin/src/views/workbench/image/oa_code.png
Normal file
BIN
admin/src/views/workbench/image/oa_code.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 42 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 33 KiB |
BIN
admin/src/views/workbench/image/service_code.png
Normal file
BIN
admin/src/views/workbench/image/service_code.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 486 KiB |
@@ -141,8 +141,8 @@ import menu_generator from './image/menu_generator.png'
|
||||
import menu_file from './image/menu_file.png'
|
||||
import menu_auth from './image/menu_auth.png'
|
||||
import menu_web from './image/menu_web.png'
|
||||
import qq_group from './image/qq_group.png'
|
||||
import customer_service from './image/customer_service.png'
|
||||
import oa_code from './image/oa_code.png'
|
||||
import service_code from './image/service_code.png'
|
||||
// 表单数据
|
||||
const workbenchData: any = reactive({
|
||||
version: {
|
||||
@@ -156,12 +156,12 @@ const workbenchData: any = reactive({
|
||||
},
|
||||
support: [
|
||||
{
|
||||
image: qq_group,
|
||||
title: '扫码进入QQ交流群',
|
||||
desc: '疑难疑点 进入QQ群'
|
||||
image: oa_code,
|
||||
title: '官方公众号',
|
||||
desc: '关注官方公众号'
|
||||
},
|
||||
{
|
||||
image: customer_service,
|
||||
image: service_code,
|
||||
title: '添加企业客服微信',
|
||||
desc: '想了解更多请添加客服'
|
||||
}
|
||||
@@ -186,7 +186,7 @@ const workbenchData: any = reactive({
|
||||
{
|
||||
name: '字典管理',
|
||||
image: menu_dict,
|
||||
url: '/setting/dict'
|
||||
url: '/dev_tools/dict'
|
||||
},
|
||||
{
|
||||
name: '代码生成器',
|
||||
|
||||
@@ -1 +1 @@
|
||||
import o from"./error.2b025df1.js";import{d as r,o as i,c as p,V as m,M as e,a as t}from"./@vue.cab01781.js";import"./element-plus.8115766e.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.66926594.js";import"./axios.2d915936.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./vue-router.5046cc50.js";import"./index.53063276.js";import"./lodash.b68d77aa.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.a8f9466d.js";import"./color.903ca10f.js";import"./clone.9d64bb7a.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.a96d99f2.js";import"./vue-clipboard3.91d4fd5f.js";import"./clipboard.c0a70c0c.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";const s="/assets/no_perms.a56e95a5.png",u={class:"error404"},a=t("div",{class:"flex justify-center"},[t("img",{class:"w-[150px] h-[150px]",src:s,alt:""})],-1),Q=r({__name:"403",setup(c){return(n,_)=>(i(),p("div",u,[m(o,{code:"403",title:"\u60A8\u7684\u8D26\u53F7\u6743\u9650\u4E0D\u8DB3\uFF0C\u8BF7\u8054\u7CFB\u7BA1\u7406\u5458\u6DFB\u52A0\u6743\u9650\uFF01","show-btn":!1},{content:e(()=>[a]),_:1})]))}});export{Q as default};
|
||||
import o from"./error.8fb57bb2.js";import{d as r,o as i,c as p,V as m,M as e,a as t}from"./@vue.cab01781.js";import"./element-plus.f5eb07a0.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.22a46fd8.js";import"./axios.8058589d.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./vue-router.5046cc50.js";import"./index.aa44aaf7.js";import"./lodash.bbe6f09f.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.5bd363c0.js";import"./color.232115c1.js";import"./clone.8f44c0eb.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.404eaa9c.js";import"./vue-clipboard3.19ab9072.js";import"./clipboard.6fb7c109.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";const s="/assets/no_perms.a56e95a5.png",u={class:"error404"},a=t("div",{class:"flex justify-center"},[t("img",{class:"w-[150px] h-[150px]",src:s,alt:""})],-1),Q=r({__name:"403",setup(c){return(n,_)=>(i(),p("div",u,[m(o,{code:"403",title:"\u60A8\u7684\u8D26\u53F7\u6743\u9650\u4E0D\u8DB3\uFF0C\u8BF7\u8054\u7CFB\u7BA1\u7406\u5458\u6DFB\u52A0\u6743\u9650\uFF01","show-btn":!1},{content:e(()=>[a]),_:1})]))}});export{Q as default};
|
||||
@@ -1 +0,0 @@
|
||||
import o from"./error.2b025df1.js";import{d as r,o as t,c as m,V as p}from"./@vue.cab01781.js";import"./element-plus.8115766e.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.66926594.js";import"./axios.2d915936.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./vue-router.5046cc50.js";import"./index.53063276.js";import"./lodash.b68d77aa.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.a8f9466d.js";import"./color.903ca10f.js";import"./clone.9d64bb7a.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.a96d99f2.js";import"./vue-clipboard3.91d4fd5f.js";import"./clipboard.c0a70c0c.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";const i={class:"error404"},L=r({__name:"404",setup(e){return(u,c)=>(t(),m("div",i,[p(o,{code:"404",title:"\u54CE\u5440\uFF0C\u51FA\u9519\u4E86\uFF01\u60A8\u8BBF\u95EE\u7684\u9875\u9762\u4E0D\u5B58\u5728\u2026"})]))}});export{L as default};
|
||||
1
frontend/assets/404.a1c8cef0.js
Normal file
1
frontend/assets/404.a1c8cef0.js
Normal file
@@ -0,0 +1 @@
|
||||
import o from"./error.8fb57bb2.js";import{d as r,o as t,c as m,V as p}from"./@vue.cab01781.js";import"./element-plus.f5eb07a0.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.22a46fd8.js";import"./axios.8058589d.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./vue-router.5046cc50.js";import"./index.aa44aaf7.js";import"./lodash.bbe6f09f.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.5bd363c0.js";import"./color.232115c1.js";import"./clone.8f44c0eb.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.404eaa9c.js";import"./vue-clipboard3.19ab9072.js";import"./clipboard.6fb7c109.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";const i={class:"error404"},L=r({__name:"404",setup(e){return(u,c)=>(t(),m("div",i,[p(o,{code:"404",title:"\u54CE\u5440\uFF0C\u51FA\u9519\u4E86\uFF01\u60A8\u8BBF\u95EE\u7684\u9875\u9762\u4E0D\u5B58\u5728\u2026"})]))}});export{L as default};
|
||||
@@ -1 +0,0 @@
|
||||
import"./add-nav.vue_vue_type_script_setup_true_lang.4d0f9da8.js";import{_ as S}from"./add-nav.vue_vue_type_script_setup_true_lang.4d0f9da8.js";import"./element-plus.8115766e.js";import"./@vue.cab01781.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.66926594.js";import"./axios.2d915936.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./index.2e76481a.js";import"./index.53063276.js";import"./lodash.b68d77aa.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.a8f9466d.js";import"./color.903ca10f.js";import"./clone.9d64bb7a.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.a96d99f2.js";import"./vue-clipboard3.91d4fd5f.js";import"./clipboard.c0a70c0c.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";import"./picker.45f93d74.js";import"./index.15556fef.js";import"./picker.6a412a5d.js";import"./index.3647ec2c.js";import"./usePaging.52ce9b34.js";import"./index.vue_vue_type_script_setup_true_lang.23d9d5f1.js";import"./vue3-video-play.05975c53.js";import"./vuedraggable.a5db575d.js";import"./vue.de4be77f.js";import"./sortablejs.cd7e2c7e.js";export{S as default};
|
||||
1
frontend/assets/add-nav.78e0236c.js
Normal file
1
frontend/assets/add-nav.78e0236c.js
Normal file
@@ -0,0 +1 @@
|
||||
import"./add-nav.vue_vue_type_script_setup_true_lang.856419ed.js";import{_ as S}from"./add-nav.vue_vue_type_script_setup_true_lang.856419ed.js";import"./element-plus.f5eb07a0.js";import"./@vue.cab01781.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.22a46fd8.js";import"./axios.8058589d.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./index.84d368ba.js";import"./index.aa44aaf7.js";import"./lodash.bbe6f09f.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.5bd363c0.js";import"./color.232115c1.js";import"./clone.8f44c0eb.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.404eaa9c.js";import"./vue-clipboard3.19ab9072.js";import"./clipboard.6fb7c109.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";import"./picker.bb543009.js";import"./index.bd5146fc.js";import"./picker.6266f853.js";import"./index.75023305.js";import"./usePaging.e2215e88.js";import"./index.vue_vue_type_script_setup_true_lang.2f52dd93.js";import"./vue3-video-play.05975c53.js";import"./vuedraggable.5917840d.js";import"./vue.a15b7233.js";import"./sortablejs.c69601cb.js";export{S as default};
|
||||
@@ -1 +0,0 @@
|
||||
import{C as F,w as b}from"./element-plus.8115766e.js";import{_ as v}from"./index.2e76481a.js";import{_ as A}from"./picker.45f93d74.js";import{_ as B}from"./picker.6a412a5d.js";import{f as _,b as y}from"./index.53063276.js";import{d as C,o as u,c as r,a as e,W as D,a8 as E,L as w,M as m,V as t,T as U}from"./@vue.cab01781.js";const N={class:"bg-fill-light flex items-center w-full p-4 mb-4"},$={class:"upload-btn w-[60px] h-[60px]"},z={class:"ml-3 flex-1"},L={class:"flex"},T=e("span",{class:"text-tx-regular flex-none mr-3"},"\u540D\u79F0",-1),I={class:"flex mt-[18px]"},M=e("span",{class:"text-tx-regular flex-none mr-3"},"\u94FE\u63A5",-1),P=U("\u6DFB\u52A0"),K=C({__name:"add-nav",props:{modelValue:{type:Array,default:()=>[]},max:{type:Number,default:10},min:{type:Number,default:1}},setup(d){const l=d,p=()=>{var a;((a=l.modelValue)==null?void 0:a.length)<l.max?l.modelValue.push({image:"",name:"\u5BFC\u822A\u540D\u79F0",link:{}}):_.msgError(`\u6700\u591A\u6DFB\u52A0${l.max}\u4E2A`)},i=a=>{var s;if(((s=l.modelValue)==null?void 0:s.length)<=l.min)return _.msgError(`\u6700\u5C11\u4FDD\u7559${l.min}\u4E2A`);l.modelValue.splice(a,1)};return(a,s)=>{const f=y,x=B,V=F,h=A,g=v,k=b;return u(),r("div",null,[e("div",null,[(u(!0),r(D,null,E(d.modelValue,(o,c)=>(u(),w(g,{class:"max-w-[400px]",key:c,onClose:n=>i(c)},{default:m(()=>[e("div",N,[t(x,{modelValue:o.image,"onUpdate:modelValue":n=>o.image=n,"upload-class":"bg-body",size:"60px","exclude-domain":""},{upload:m(()=>[e("div",$,[t(f,{name:"el-icon-Plus",size:20})])]),_:2},1032,["modelValue","onUpdate:modelValue"]),e("div",z,[e("div",L,[T,t(V,{modelValue:o.name,"onUpdate:modelValue":n=>o.name=n,placeholder:"\u8BF7\u8F93\u5165\u540D\u79F0"},null,8,["modelValue","onUpdate:modelValue"])]),e("div",I,[M,t(h,{modelValue:o.link,"onUpdate:modelValue":n=>o.link=n},null,8,["modelValue","onUpdate:modelValue"])])])])]),_:2},1032,["onClose"]))),128))]),e("div",null,[t(k,{type:"primary",onClick:p},{default:m(()=>[P]),_:1})])])}}});export{K as _};
|
||||
@@ -0,0 +1 @@
|
||||
import{C as D,w as F}from"./element-plus.f5eb07a0.js";import{_ as A}from"./index.84d368ba.js";import{_ as B}from"./picker.bb543009.js";import{_ as y}from"./picker.6266f853.js";import{f as p,b as C}from"./index.aa44aaf7.js";import{D as E}from"./vuedraggable.5917840d.js";import{d as U,e as w,o as c,c as N,a as e,V as t,M as m,L as $,u as r,k as z,T as L}from"./@vue.cab01781.js";const T={class:"bg-fill-light flex items-center w-full p-4 mb-4 cursor-move"},I={class:"upload-btn w-[60px] h-[60px]"},M={class:"ml-3 flex-1"},P={class:"flex"},R=e("span",{class:"text-tx-regular flex-none mr-3"},"\u540D\u79F0",-1),j={class:"flex mt-[18px]"},q=e("span",{class:"text-tx-regular flex-none mr-3"},"\u94FE\u63A5",-1),G=L("\u6DFB\u52A0"),X=U({__name:"add-nav",props:{modelValue:{type:Array,default:()=>[]},max:{type:Number,default:10},min:{type:Number,default:1}},emits:["update:modelValue"],setup(_,{emit:i}){const o=_,s=w({get(){return o.modelValue},set(a){i("update:modelValue",a)}}),f=()=>{var a;((a=o.modelValue)==null?void 0:a.length)<o.max?s.value.push({image:"",name:"\u5BFC\u822A\u540D\u79F0",link:{}}):p.msgError(`\u6700\u591A\u6DFB\u52A0${o.max}\u4E2A`)},V=a=>{var u;if(((u=o.modelValue)==null?void 0:u.length)<=o.min)return p.msgError(`\u6700\u5C11\u4FDD\u7559${o.min}\u4E2A`);s.value.splice(a,1)};return(a,u)=>{const x=C,g=y,h=D,v=B,k=A,b=F;return c(),N("div",null,[e("div",null,[t(r(E),{class:"draggable",modelValue:r(s),"onUpdate:modelValue":u[0]||(u[0]=l=>z(s)?s.value=l:null),animation:"300"},{item:m(({element:l,index:d})=>[(c(),$(k,{class:"max-w-[400px]",key:d,onClose:n=>V(d)},{default:m(()=>[e("div",T,[t(g,{modelValue:l.image,"onUpdate:modelValue":n=>l.image=n,"upload-class":"bg-body",size:"60px","exclude-domain":""},{upload:m(()=>[e("div",I,[t(x,{name:"el-icon-Plus",size:20})])]),_:2},1032,["modelValue","onUpdate:modelValue"]),e("div",M,[e("div",P,[R,t(h,{modelValue:l.name,"onUpdate:modelValue":n=>l.name=n,placeholder:"\u8BF7\u8F93\u5165\u540D\u79F0"},null,8,["modelValue","onUpdate:modelValue"])]),e("div",j,[q,t(v,{modelValue:l.link,"onUpdate:modelValue":n=>l.link=n},null,8,["modelValue","onUpdate:modelValue"])])])])]),_:2},1032,["onClose"]))]),_:1},8,["modelValue"])]),e("div",null,[t(b,{type:"primary",onClick:f},{default:m(()=>[G]),_:1})])])}}});export{X as _};
|
||||
@@ -1 +1 @@
|
||||
import{r as e}from"./index.53063276.js";function a(t){return e.get({url:"/article/cate/list",params:t})}function l(t){return e.get({url:"/article/cate/all",params:t})}function i(t){return e.post({url:"/article/cate/add",params:t})}function c(t){return e.post({url:"/article/cate/edit",params:t})}function u(t){return e.post({url:"/article/cate/del",params:t})}function n(t){return e.get({url:"/article/cate/detail",params:t})}function s(t){return e.post({url:"/article/cate/change",params:t})}function o(t){return e.get({url:"/article/list",params:t})}function d(t){return e.post({url:"/article/add",params:t})}function f(t){return e.post({url:"/article/edit",params:t})}function p(t){return e.post({url:"/article/del",params:t})}function g(t){return e.get({url:"/article/detail",params:t})}function C(t){return e.post({url:"/article/change",params:t})}export{c as a,i as b,n as c,u as d,s as e,a as f,g,l as h,f as i,d as j,C as k,p as l,o as m};
|
||||
import{r as e}from"./index.aa44aaf7.js";function a(t){return e.get({url:"/article/cate/list",params:t})}function l(t){return e.get({url:"/article/cate/all",params:t})}function i(t){return e.post({url:"/article/cate/add",params:t})}function c(t){return e.post({url:"/article/cate/edit",params:t})}function u(t){return e.post({url:"/article/cate/del",params:t})}function n(t){return e.get({url:"/article/cate/detail",params:t})}function s(t){return e.post({url:"/article/cate/change",params:t})}function o(t){return e.get({url:"/article/list",params:t})}function d(t){return e.post({url:"/article/add",params:t})}function f(t){return e.post({url:"/article/edit",params:t})}function p(t){return e.post({url:"/article/del",params:t})}function g(t){return e.get({url:"/article/detail",params:t})}function C(t){return e.post({url:"/article/change",params:t})}export{c as a,i as b,n as c,u as d,s as e,a as f,g,l as h,f as i,d as j,C as k,p as l,o as m};
|
||||
@@ -1 +0,0 @@
|
||||
import"./attr-setting.vue_vue_type_script_setup_true_lang.173991cf.js";import{_ as cm}from"./attr-setting.vue_vue_type_script_setup_true_lang.173991cf.js";import"./index.8b3d114e.js";import"./attr.vue_vue_type_script_setup_true_lang.22676784.js";import"./element-plus.8115766e.js";import"./@vue.cab01781.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.66926594.js";import"./axios.2d915936.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./index.2e76481a.js";import"./index.53063276.js";import"./lodash.b68d77aa.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.a8f9466d.js";import"./color.903ca10f.js";import"./clone.9d64bb7a.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.a96d99f2.js";import"./vue-clipboard3.91d4fd5f.js";import"./clipboard.c0a70c0c.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";import"./picker.45f93d74.js";import"./index.15556fef.js";import"./picker.6a412a5d.js";import"./index.3647ec2c.js";import"./usePaging.52ce9b34.js";import"./index.vue_vue_type_script_setup_true_lang.23d9d5f1.js";import"./vue3-video-play.05975c53.js";import"./vuedraggable.a5db575d.js";import"./vue.de4be77f.js";import"./sortablejs.cd7e2c7e.js";import"./content.vue_vue_type_script_setup_true_lang.c187246b.js";import"./decoration-img.e07a9eab.js";import"./attr.vue_vue_type_script_setup_true_lang.7393e332.js";import"./content.cbf0d4cf.js";import"./attr.vue_vue_type_script_setup_true_lang.dd81a142.js";import"./add-nav.vue_vue_type_script_setup_true_lang.4d0f9da8.js";import"./content.1302931d.js";import"./attr.vue_vue_type_script_setup_true_lang.bec38aae.js";import"./content.vue_vue_type_script_setup_true_lang.e5408794.js";import"./attr.vue_vue_type_script_setup_true_lang.06a2fa18.js";import"./content.250698bc.js";import"./decoration.a3e48437.js";import"./attr.vue_vue_type_script_setup_true_lang.0b87e513.js";import"./content.d99d9dd5.js";import"./attr.vue_vue_type_script_setup_true_lang.4d4e4b9a.js";import"./content.vue_vue_type_script_setup_true_lang.f8910cfe.js";import"./attr.vue_vue_type_script_setup_true_lang.0583d8bc.js";import"./content.90ee9825.js";export{cm as default};
|
||||
1
frontend/assets/attr-setting.a1926d14.js
Normal file
1
frontend/assets/attr-setting.a1926d14.js
Normal file
@@ -0,0 +1 @@
|
||||
import"./attr-setting.vue_vue_type_script_setup_true_lang.3f964a14.js";import{_ as cm}from"./attr-setting.vue_vue_type_script_setup_true_lang.3f964a14.js";import"./index.fe3d9dae.js";import"./attr.vue_vue_type_script_setup_true_lang.b7d84074.js";import"./element-plus.f5eb07a0.js";import"./@vue.cab01781.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.22a46fd8.js";import"./axios.8058589d.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./index.84d368ba.js";import"./index.aa44aaf7.js";import"./lodash.bbe6f09f.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.5bd363c0.js";import"./color.232115c1.js";import"./clone.8f44c0eb.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.404eaa9c.js";import"./vue-clipboard3.19ab9072.js";import"./clipboard.6fb7c109.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";import"./picker.bb543009.js";import"./index.bd5146fc.js";import"./picker.6266f853.js";import"./index.75023305.js";import"./usePaging.e2215e88.js";import"./index.vue_vue_type_script_setup_true_lang.2f52dd93.js";import"./vue3-video-play.05975c53.js";import"./vuedraggable.5917840d.js";import"./vue.a15b7233.js";import"./sortablejs.c69601cb.js";import"./content.vue_vue_type_script_setup_true_lang.3bb51b7a.js";import"./decoration-img.480c1d38.js";import"./attr.vue_vue_type_script_setup_true_lang.8e9dd23e.js";import"./content.6bac01bd.js";import"./attr.vue_vue_type_script_setup_true_lang.ab98fda4.js";import"./add-nav.vue_vue_type_script_setup_true_lang.856419ed.js";import"./content.a0ce4144.js";import"./attr.vue_vue_type_script_setup_true_lang.6d0a5dbb.js";import"./content.vue_vue_type_script_setup_true_lang.b304c701.js";import"./attr.vue_vue_type_script_setup_true_lang.06a2fa18.js";import"./content.ddf02ef6.js";import"./decoration.c4bfe19f.js";import"./attr.vue_vue_type_script_setup_true_lang.0b87e513.js";import"./content.b9dac3a5.js";import"./attr.vue_vue_type_script_setup_true_lang.9aec2f99.js";import"./content.vue_vue_type_script_setup_true_lang.afe6098d.js";import"./attr.vue_vue_type_script_setup_true_lang.0583d8bc.js";import"./content.3563b530.js";export{cm as default};
|
||||
@@ -1 +1 @@
|
||||
import{w as i}from"./index.8b3d114e.js";import{d as l,o as t,c as d,a as m,U as f,L as c,R as p,u as g,aK as b}from"./@vue.cab01781.js";const u={class:"pages-setting"},w={class:"title flex items-center before:w-[3px] before:h-[14px] before:block before:bg-primary before:mr-2"},k=l({__name:"attr-setting",props:{widget:{type:Object,default:()=>({})}},setup(e){return(y,x)=>{var s,a,n,o,r;return t(),d("div",u,[m("div",w,f((s=e.widget)==null?void 0:s.title),1),(t(),c(b,null,[(t(),c(p((n=g(i)[(a=e.widget)==null?void 0:a.name])==null?void 0:n.attr),{class:"pt-5 pr-4",content:(o=e.widget)==null?void 0:o.content,styles:(r=e.widget)==null?void 0:r.styles},null,8,["content","styles"]))],1024))])}}});export{k as _};
|
||||
import{w as i}from"./index.fe3d9dae.js";import{d as l,o as t,c as d,a as m,U as f,L as c,R as p,u as g,aK as b}from"./@vue.cab01781.js";const u={class:"pages-setting"},w={class:"title flex items-center before:w-[3px] before:h-[14px] before:block before:bg-primary before:mr-2"},k=l({__name:"attr-setting",props:{widget:{type:Object,default:()=>({})}},setup(e){return(y,x)=>{var s,a,n,o,r;return t(),d("div",u,[m("div",w,f((s=e.widget)==null?void 0:s.title),1),(t(),c(b,null,[(t(),c(p((n=g(i)[(a=e.widget)==null?void 0:a.name])==null?void 0:n.attr),{class:"pt-5 pr-4",content:(o=e.widget)==null?void 0:o.content,styles:(r=e.widget)==null?void 0:r.styles},null,8,["content","styles"]))],1024))])}}});export{k as _};
|
||||
1
frontend/assets/attr.049f48d5.js
Normal file
1
frontend/assets/attr.049f48d5.js
Normal file
@@ -0,0 +1 @@
|
||||
import"./attr.vue_vue_type_script_setup_true_lang.ab98fda4.js";import{_ as T}from"./attr.vue_vue_type_script_setup_true_lang.ab98fda4.js";import"./element-plus.f5eb07a0.js";import"./@vue.cab01781.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.22a46fd8.js";import"./axios.8058589d.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./add-nav.vue_vue_type_script_setup_true_lang.856419ed.js";import"./index.84d368ba.js";import"./index.aa44aaf7.js";import"./lodash.bbe6f09f.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.5bd363c0.js";import"./color.232115c1.js";import"./clone.8f44c0eb.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.404eaa9c.js";import"./vue-clipboard3.19ab9072.js";import"./clipboard.6fb7c109.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";import"./picker.bb543009.js";import"./index.bd5146fc.js";import"./picker.6266f853.js";import"./index.75023305.js";import"./usePaging.e2215e88.js";import"./index.vue_vue_type_script_setup_true_lang.2f52dd93.js";import"./vue3-video-play.05975c53.js";import"./vuedraggable.5917840d.js";import"./vue.a15b7233.js";import"./sortablejs.c69601cb.js";export{T as default};
|
||||
1
frontend/assets/attr.0b7b7c99.js
Normal file
1
frontend/assets/attr.0b7b7c99.js
Normal file
@@ -0,0 +1 @@
|
||||
import"./attr.vue_vue_type_script_setup_true_lang.9aec2f99.js";import{_ as S}from"./attr.vue_vue_type_script_setup_true_lang.9aec2f99.js";import"./element-plus.f5eb07a0.js";import"./@vue.cab01781.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.22a46fd8.js";import"./axios.8058589d.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./index.84d368ba.js";import"./index.aa44aaf7.js";import"./lodash.bbe6f09f.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.5bd363c0.js";import"./color.232115c1.js";import"./clone.8f44c0eb.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.404eaa9c.js";import"./vue-clipboard3.19ab9072.js";import"./clipboard.6fb7c109.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";import"./picker.bb543009.js";import"./index.bd5146fc.js";import"./picker.6266f853.js";import"./index.75023305.js";import"./usePaging.e2215e88.js";import"./index.vue_vue_type_script_setup_true_lang.2f52dd93.js";import"./vue3-video-play.05975c53.js";import"./vuedraggable.5917840d.js";import"./vue.a15b7233.js";import"./sortablejs.c69601cb.js";export{S as default};
|
||||
@@ -1 +0,0 @@
|
||||
import"./attr.vue_vue_type_script_setup_true_lang.dd81a142.js";import{_ as T}from"./attr.vue_vue_type_script_setup_true_lang.dd81a142.js";import"./element-plus.8115766e.js";import"./@vue.cab01781.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.66926594.js";import"./axios.2d915936.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./add-nav.vue_vue_type_script_setup_true_lang.4d0f9da8.js";import"./index.2e76481a.js";import"./index.53063276.js";import"./lodash.b68d77aa.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.a8f9466d.js";import"./color.903ca10f.js";import"./clone.9d64bb7a.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.a96d99f2.js";import"./vue-clipboard3.91d4fd5f.js";import"./clipboard.c0a70c0c.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";import"./picker.45f93d74.js";import"./index.15556fef.js";import"./picker.6a412a5d.js";import"./index.3647ec2c.js";import"./usePaging.52ce9b34.js";import"./index.vue_vue_type_script_setup_true_lang.23d9d5f1.js";import"./vue3-video-play.05975c53.js";import"./vuedraggable.a5db575d.js";import"./vue.de4be77f.js";import"./sortablejs.cd7e2c7e.js";export{T as default};
|
||||
@@ -1 +0,0 @@
|
||||
import"./attr.vue_vue_type_script_setup_true_lang.7393e332.js";import{_ as R}from"./attr.vue_vue_type_script_setup_true_lang.7393e332.js";import"./element-plus.8115766e.js";import"./@vue.cab01781.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.66926594.js";import"./axios.2d915936.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./picker.6a412a5d.js";import"./index.15556fef.js";import"./index.53063276.js";import"./lodash.b68d77aa.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.a8f9466d.js";import"./color.903ca10f.js";import"./clone.9d64bb7a.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.a96d99f2.js";import"./vue-clipboard3.91d4fd5f.js";import"./clipboard.c0a70c0c.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";import"./index.3647ec2c.js";import"./usePaging.52ce9b34.js";import"./index.2e76481a.js";import"./index.vue_vue_type_script_setup_true_lang.23d9d5f1.js";import"./vue3-video-play.05975c53.js";import"./vuedraggable.a5db575d.js";import"./vue.de4be77f.js";import"./sortablejs.cd7e2c7e.js";export{R as default};
|
||||
1
frontend/assets/attr.303c1d3b.js
Normal file
1
frontend/assets/attr.303c1d3b.js
Normal file
@@ -0,0 +1 @@
|
||||
import"./attr.vue_vue_type_script_setup_true_lang.6d0a5dbb.js";import{_ as T}from"./attr.vue_vue_type_script_setup_true_lang.6d0a5dbb.js";import"./element-plus.f5eb07a0.js";import"./@vue.cab01781.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.22a46fd8.js";import"./axios.8058589d.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./add-nav.vue_vue_type_script_setup_true_lang.856419ed.js";import"./index.84d368ba.js";import"./index.aa44aaf7.js";import"./lodash.bbe6f09f.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.5bd363c0.js";import"./color.232115c1.js";import"./clone.8f44c0eb.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.404eaa9c.js";import"./vue-clipboard3.19ab9072.js";import"./clipboard.6fb7c109.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";import"./picker.bb543009.js";import"./index.bd5146fc.js";import"./picker.6266f853.js";import"./index.75023305.js";import"./usePaging.e2215e88.js";import"./index.vue_vue_type_script_setup_true_lang.2f52dd93.js";import"./vue3-video-play.05975c53.js";import"./vuedraggable.5917840d.js";import"./vue.a15b7233.js";import"./sortablejs.c69601cb.js";export{T as default};
|
||||
@@ -1 +0,0 @@
|
||||
import"./attr.vue_vue_type_script_setup_true_lang.22676784.js";import{_ as S}from"./attr.vue_vue_type_script_setup_true_lang.22676784.js";import"./element-plus.8115766e.js";import"./@vue.cab01781.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.66926594.js";import"./axios.2d915936.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./index.2e76481a.js";import"./index.53063276.js";import"./lodash.b68d77aa.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.a8f9466d.js";import"./color.903ca10f.js";import"./clone.9d64bb7a.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.a96d99f2.js";import"./vue-clipboard3.91d4fd5f.js";import"./clipboard.c0a70c0c.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";import"./picker.45f93d74.js";import"./index.15556fef.js";import"./picker.6a412a5d.js";import"./index.3647ec2c.js";import"./usePaging.52ce9b34.js";import"./index.vue_vue_type_script_setup_true_lang.23d9d5f1.js";import"./vue3-video-play.05975c53.js";import"./vuedraggable.a5db575d.js";import"./vue.de4be77f.js";import"./sortablejs.cd7e2c7e.js";export{S as default};
|
||||
1
frontend/assets/attr.80ca5719.js
Normal file
1
frontend/assets/attr.80ca5719.js
Normal file
@@ -0,0 +1 @@
|
||||
import"./attr.vue_vue_type_script_setup_true_lang.8e9dd23e.js";import{_ as R}from"./attr.vue_vue_type_script_setup_true_lang.8e9dd23e.js";import"./element-plus.f5eb07a0.js";import"./@vue.cab01781.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.22a46fd8.js";import"./axios.8058589d.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./picker.6266f853.js";import"./index.bd5146fc.js";import"./index.aa44aaf7.js";import"./lodash.bbe6f09f.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.5bd363c0.js";import"./color.232115c1.js";import"./clone.8f44c0eb.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.404eaa9c.js";import"./vue-clipboard3.19ab9072.js";import"./clipboard.6fb7c109.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";import"./index.75023305.js";import"./usePaging.e2215e88.js";import"./index.84d368ba.js";import"./index.vue_vue_type_script_setup_true_lang.2f52dd93.js";import"./vue3-video-play.05975c53.js";import"./vuedraggable.5917840d.js";import"./vue.a15b7233.js";import"./sortablejs.c69601cb.js";export{R as default};
|
||||
@@ -1 +0,0 @@
|
||||
import"./attr.vue_vue_type_script_setup_true_lang.bec38aae.js";import{_ as T}from"./attr.vue_vue_type_script_setup_true_lang.bec38aae.js";import"./element-plus.8115766e.js";import"./@vue.cab01781.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.66926594.js";import"./axios.2d915936.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./add-nav.vue_vue_type_script_setup_true_lang.4d0f9da8.js";import"./index.2e76481a.js";import"./index.53063276.js";import"./lodash.b68d77aa.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.a8f9466d.js";import"./color.903ca10f.js";import"./clone.9d64bb7a.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.a96d99f2.js";import"./vue-clipboard3.91d4fd5f.js";import"./clipboard.c0a70c0c.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";import"./picker.45f93d74.js";import"./index.15556fef.js";import"./picker.6a412a5d.js";import"./index.3647ec2c.js";import"./usePaging.52ce9b34.js";import"./index.vue_vue_type_script_setup_true_lang.23d9d5f1.js";import"./vue3-video-play.05975c53.js";import"./vuedraggable.a5db575d.js";import"./vue.de4be77f.js";import"./sortablejs.cd7e2c7e.js";export{T as default};
|
||||
1
frontend/assets/attr.a9a313fb.js
Normal file
1
frontend/assets/attr.a9a313fb.js
Normal file
@@ -0,0 +1 @@
|
||||
import"./attr.vue_vue_type_script_setup_true_lang.b7d84074.js";import{_ as S}from"./attr.vue_vue_type_script_setup_true_lang.b7d84074.js";import"./element-plus.f5eb07a0.js";import"./@vue.cab01781.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.22a46fd8.js";import"./axios.8058589d.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./index.84d368ba.js";import"./index.aa44aaf7.js";import"./lodash.bbe6f09f.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.5bd363c0.js";import"./color.232115c1.js";import"./clone.8f44c0eb.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.404eaa9c.js";import"./vue-clipboard3.19ab9072.js";import"./clipboard.6fb7c109.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";import"./picker.bb543009.js";import"./index.bd5146fc.js";import"./picker.6266f853.js";import"./index.75023305.js";import"./usePaging.e2215e88.js";import"./index.vue_vue_type_script_setup_true_lang.2f52dd93.js";import"./vue3-video-play.05975c53.js";import"./vuedraggable.5917840d.js";import"./vue.a15b7233.js";import"./sortablejs.c69601cb.js";export{S as default};
|
||||
@@ -1 +0,0 @@
|
||||
import"./attr.vue_vue_type_script_setup_true_lang.4d4e4b9a.js";import{_ as S}from"./attr.vue_vue_type_script_setup_true_lang.4d4e4b9a.js";import"./element-plus.8115766e.js";import"./@vue.cab01781.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.66926594.js";import"./axios.2d915936.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./index.2e76481a.js";import"./index.53063276.js";import"./lodash.b68d77aa.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.a8f9466d.js";import"./color.903ca10f.js";import"./clone.9d64bb7a.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.a96d99f2.js";import"./vue-clipboard3.91d4fd5f.js";import"./clipboard.c0a70c0c.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";import"./picker.45f93d74.js";import"./index.15556fef.js";import"./picker.6a412a5d.js";import"./index.3647ec2c.js";import"./usePaging.52ce9b34.js";import"./index.vue_vue_type_script_setup_true_lang.23d9d5f1.js";import"./vue3-video-play.05975c53.js";import"./vuedraggable.a5db575d.js";import"./vue.de4be77f.js";import"./sortablejs.cd7e2c7e.js";export{S as default};
|
||||
@@ -1 +0,0 @@
|
||||
import{O as y,P as U,D as v,C as w,w as N,F as O}from"./element-plus.8115766e.js";import{_ as $}from"./index.2e76481a.js";import{_ as j}from"./picker.45f93d74.js";import{_ as I}from"./picker.6a412a5d.js";import{f}from"./index.53063276.js";import{d as L,o as c,c as E,V as e,M as t,a as _,W as R,a8 as T,L as V,S as G,T as r}from"./@vue.cab01781.js";const M=r("\u5F00\u542F"),P=r("\u505C\u7528"),S={class:"flex-1"},W=_("div",{class:"form-tips"},"\u6700\u591A\u6DFB\u52A05\u5F20\uFF0C\u5EFA\u8BAE\u56FE\u7247\u5C3A\u5BF8\uFF1A750px*340px",-1),q={class:"bg-fill-light flex items-center w-full p-4 mt-4"},z={class:"ml-3 flex-1"},H=r("\u6DFB\u52A0\u56FE\u7247"),ee=L({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(a){const d=a,m=5,b=()=>{var n;((n=d.content.data)==null?void 0:n.length)<m?d.content.data.push({image:"",name:"",link:{}}):f.msgError(`\u6700\u591A\u6DFB\u52A0${m}\u5F20\u56FE\u7247`)},g=n=>{var u;if(((u=d.content.data)==null?void 0:u.length)<=1)return f.msgError("\u6700\u5C11\u4FDD\u7559\u4E00\u5F20\u56FE\u7247");d.content.data.splice(n,1)};return(n,u)=>{const p=y,h=U,s=v,k=I,x=w,B=j,A=$,C=N,D=O;return c(),E("div",null,[e(D,{"label-width":"70px"},{default:t(()=>{var i;return[e(s,{label:"\u662F\u5426\u542F\u7528"},{default:t(()=>[e(h,{modelValue:a.content.enabled,"onUpdate:modelValue":u[0]||(u[0]=o=>a.content.enabled=o)},{default:t(()=>[e(p,{label:1},{default:t(()=>[M]),_:1}),e(p,{label:0},{default:t(()=>[P]),_:1})]),_:1},8,["modelValue"])]),_:1}),e(s,{label:"\u56FE\u7247\u8BBE\u7F6E"},{default:t(()=>[_("div",S,[W,(c(!0),E(R,null,T(a.content.data,(o,F)=>(c(),V(A,{key:F,onClose:l=>g(F),class:"max-w-[400px]"},{default:t(()=>[_("div",q,[e(k,{modelValue:o.image,"onUpdate:modelValue":l=>o.image=l,"upload-class":"bg-body","exclude-domain":""},null,8,["modelValue","onUpdate:modelValue"]),_("div",z,[e(s,{label:"\u56FE\u7247\u540D\u79F0"},{default:t(()=>[e(x,{modelValue:o.name,"onUpdate:modelValue":l=>o.name=l,placeholder:"\u8BF7\u8F93\u5165\u540D\u79F0"},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),e(s,{class:"mt-[18px]",label:"\u56FE\u7247\u94FE\u63A5"},{default:t(()=>[e(B,{modelValue:o.link,"onUpdate:modelValue":l=>o.link=l},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)])])]),_:2},1032,["onClose"]))),128))])]),_:1}),((i=a.content.data)==null?void 0:i.length)<m?(c(),V(s,{key:0},{default:t(()=>[e(C,{type:"primary",onClick:b},{default:t(()=>[H]),_:1})]),_:1})):G("",!0)]}),_:1})])}}});export{ee as _};
|
||||
@@ -1 +0,0 @@
|
||||
import{O as y,P as U,D as v,C as w,w as N,F as O}from"./element-plus.8115766e.js";import{_ as $}from"./index.2e76481a.js";import{_ as j}from"./picker.45f93d74.js";import{_ as I}from"./picker.6a412a5d.js";import{f}from"./index.53063276.js";import{d as L,o as c,c as E,V as e,M as t,a as _,W as R,a8 as T,L as V,S as G,T as r}from"./@vue.cab01781.js";const M=r("\u5F00\u542F"),P=r("\u505C\u7528"),S={class:"flex-1"},W=_("div",{class:"form-tips"},"\u6700\u591A\u6DFB\u52A05\u5F20\uFF0C\u5EFA\u8BAE\u56FE\u7247\u5C3A\u5BF8\uFF1A750px*200px",-1),q={class:"bg-fill-light flex items-center w-full p-4 mt-4"},z={class:"ml-3 flex-1"},H=r("\u6DFB\u52A0\u56FE\u7247"),ee=L({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(a){const d=a,m=5,b=()=>{var n;((n=d.content.data)==null?void 0:n.length)<m?d.content.data.push({image:"",name:"",link:{}}):f.msgError(`\u6700\u591A\u6DFB\u52A0${m}\u5F20\u56FE\u7247`)},g=n=>{var u;if(((u=d.content.data)==null?void 0:u.length)<=1)return f.msgError("\u6700\u5C11\u4FDD\u7559\u4E00\u5F20\u56FE\u7247");d.content.data.splice(n,1)};return(n,u)=>{const p=y,h=U,s=v,k=I,x=w,B=j,A=$,C=N,D=O;return c(),E("div",null,[e(D,{"label-width":"70px"},{default:t(()=>{var i;return[e(s,{label:"\u662F\u5426\u542F\u7528"},{default:t(()=>[e(h,{modelValue:a.content.enabled,"onUpdate:modelValue":u[0]||(u[0]=o=>a.content.enabled=o)},{default:t(()=>[e(p,{label:1},{default:t(()=>[M]),_:1}),e(p,{label:0},{default:t(()=>[P]),_:1})]),_:1},8,["modelValue"])]),_:1}),e(s,{label:"\u56FE\u7247\u8BBE\u7F6E"},{default:t(()=>[_("div",S,[W,(c(!0),E(R,null,T(a.content.data,(o,F)=>(c(),V(A,{key:F,onClose:l=>g(F),class:"max-w-[400px]"},{default:t(()=>[_("div",q,[e(k,{modelValue:o.image,"onUpdate:modelValue":l=>o.image=l,"upload-class":"bg-body","exclude-domain":""},null,8,["modelValue","onUpdate:modelValue"]),_("div",z,[e(s,{label:"\u56FE\u7247\u540D\u79F0"},{default:t(()=>[e(x,{modelValue:o.name,"onUpdate:modelValue":l=>o.name=l,placeholder:"\u8BF7\u8F93\u5165\u540D\u79F0"},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),e(s,{class:"mt-[18px]",label:"\u56FE\u7247\u94FE\u63A5"},{default:t(()=>[e(B,{modelValue:o.link,"onUpdate:modelValue":l=>o.link=l},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)])])]),_:2},1032,["onClose"]))),128))])]),_:1}),((i=a.content.data)==null?void 0:i.length)<m?(c(),V(s,{key:0},{default:t(()=>[e(C,{type:"primary",onClick:b},{default:t(()=>[H]),_:1})]),_:1})):G("",!0)]}),_:1})])}}});export{ee as _};
|
||||
@@ -1 +1 @@
|
||||
import{O as c,P as r,D as i,F as f}from"./element-plus.8115766e.js";import{_ as p}from"./add-nav.vue_vue_type_script_setup_true_lang.4d0f9da8.js";import{d as F,o as E,c as b,V as e,M as t,a as d,T as s}from"./@vue.cab01781.js";const V=s("\u5F00\u542F"),x=s("\u505C\u7528"),B={class:"flex-1"},A=d("div",{class:"form-tips mb-4"},"\u6700\u591A\u53EF\u6DFB\u52A010\u4E2A\uFF0C\u5EFA\u8BAE\u56FE\u7247\u5C3A\u5BF8\uFF1A100px*100px",-1),D=F({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(o){return(C,a)=>{const u=c,m=r,n=i,_=f;return E(),b("div",null,[e(_,{"label-width":"70px"},{default:t(()=>[e(n,{label:"\u662F\u5426\u542F\u7528"},{default:t(()=>[e(m,{modelValue:o.content.enabled,"onUpdate:modelValue":a[0]||(a[0]=l=>o.content.enabled=l)},{default:t(()=>[e(u,{label:1},{default:t(()=>[V]),_:1}),e(u,{label:0},{default:t(()=>[x]),_:1})]),_:1},8,["modelValue"])]),_:1}),e(n,{label:"\u83DC\u5355\u8BBE\u7F6E"},{default:t(()=>[d("div",B,[A,e(p,{modelValue:o.content.data,"onUpdate:modelValue":a[1]||(a[1]=l=>o.content.data=l)},null,8,["modelValue"])])]),_:1})]),_:1})])}}});export{D as _};
|
||||
import{O as c,P as r,D as i,F as f}from"./element-plus.f5eb07a0.js";import{_ as p}from"./add-nav.vue_vue_type_script_setup_true_lang.856419ed.js";import{d as F,o as E,c as b,V as e,M as t,a as d,T as s}from"./@vue.cab01781.js";const V=s("\u5F00\u542F"),x=s("\u505C\u7528"),B={class:"flex-1"},A=d("div",{class:"form-tips mb-4"},"\u6700\u591A\u53EF\u6DFB\u52A010\u4E2A\uFF0C\u5EFA\u8BAE\u56FE\u7247\u5C3A\u5BF8\uFF1A100px*100px",-1),D=F({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(o){return(C,a)=>{const u=c,m=r,n=i,_=f;return E(),b("div",null,[e(_,{"label-width":"70px"},{default:t(()=>[e(n,{label:"\u662F\u5426\u542F\u7528"},{default:t(()=>[e(m,{modelValue:o.content.enabled,"onUpdate:modelValue":a[0]||(a[0]=l=>o.content.enabled=l)},{default:t(()=>[e(u,{label:1},{default:t(()=>[V]),_:1}),e(u,{label:0},{default:t(()=>[x]),_:1})]),_:1},8,["modelValue"])]),_:1}),e(n,{label:"\u83DC\u5355\u8BBE\u7F6E"},{default:t(()=>[d("div",B,[A,e(p,{modelValue:o.content.data,"onUpdate:modelValue":a[1]||(a[1]=l=>o.content.data=l)},null,8,["modelValue"])])]),_:1})]),_:1})])}}});export{D as _};
|
||||
@@ -1 +1 @@
|
||||
import{C as c,D as i,F}from"./element-plus.8115766e.js";import{_ as p}from"./picker.6a412a5d.js";import{d as r,o as f,c as V,V as e,M as o,a as m}from"./@vue.cab01781.js";const B=m("div",{class:"form-tips"},"\u5EFA\u8BAE\u56FE\u7247\u5C3A\u5BF8\uFF1A200*200\u50CF\u7D20\uFF1B\u56FE\u7247\u683C\u5F0F\uFF1Ajpg\u3001png\u3001jpeg",-1),A=r({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(t){return(E,l)=>{const a=c,n=i,d=p,s=F;return f(),V("div",null,[e(s,{"label-width":"90px"},{default:o(()=>[e(n,{label:"\u5BA2\u670D\u6807\u9898"},{default:o(()=>[e(a,{class:"w-[400px]",modelValue:t.content.title,"onUpdate:modelValue":l[0]||(l[0]=u=>t.content.title=u)},null,8,["modelValue"])]),_:1}),e(n,{label:"\u670D\u52A1\u65F6\u95F4"},{default:o(()=>[e(a,{class:"w-[400px]",modelValue:t.content.time,"onUpdate:modelValue":l[1]||(l[1]=u=>t.content.time=u)},null,8,["modelValue"])]),_:1}),e(n,{label:"\u8054\u7CFB\u7535\u8BDD"},{default:o(()=>[e(a,{class:"w-[400px]",modelValue:t.content.mobile,"onUpdate:modelValue":l[2]||(l[2]=u=>t.content.mobile=u)},null,8,["modelValue"])]),_:1}),e(n,{label:"\u5BA2\u670D\u4E8C\u7EF4\u7801"},{default:o(()=>[m("div",null,[e(d,{modelValue:t.content.qrcode,"onUpdate:modelValue":l[3]||(l[3]=u=>t.content.qrcode=u),"exclude-domain":""},null,8,["modelValue"]),B])]),_:1})]),_:1})])}}});export{A as _};
|
||||
import{C as c,D as i,F}from"./element-plus.f5eb07a0.js";import{_ as p}from"./picker.6266f853.js";import{d as r,o as f,c as V,V as e,M as o,a as m}from"./@vue.cab01781.js";const B=m("div",{class:"form-tips"},"\u5EFA\u8BAE\u56FE\u7247\u5C3A\u5BF8\uFF1A200*200\u50CF\u7D20\uFF1B\u56FE\u7247\u683C\u5F0F\uFF1Ajpg\u3001png\u3001jpeg",-1),A=r({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(t){return(E,l)=>{const a=c,n=i,d=p,s=F;return f(),V("div",null,[e(s,{"label-width":"90px"},{default:o(()=>[e(n,{label:"\u5BA2\u670D\u6807\u9898"},{default:o(()=>[e(a,{class:"w-[400px]",modelValue:t.content.title,"onUpdate:modelValue":l[0]||(l[0]=u=>t.content.title=u)},null,8,["modelValue"])]),_:1}),e(n,{label:"\u670D\u52A1\u65F6\u95F4"},{default:o(()=>[e(a,{class:"w-[400px]",modelValue:t.content.time,"onUpdate:modelValue":l[1]||(l[1]=u=>t.content.time=u)},null,8,["modelValue"])]),_:1}),e(n,{label:"\u8054\u7CFB\u7535\u8BDD"},{default:o(()=>[e(a,{class:"w-[400px]",modelValue:t.content.mobile,"onUpdate:modelValue":l[2]||(l[2]=u=>t.content.mobile=u)},null,8,["modelValue"])]),_:1}),e(n,{label:"\u5BA2\u670D\u4E8C\u7EF4\u7801"},{default:o(()=>[m("div",null,[e(d,{modelValue:t.content.qrcode,"onUpdate:modelValue":l[3]||(l[3]=u=>t.content.qrcode=u),"exclude-domain":""},null,8,["modelValue"]),B])]),_:1})]),_:1})])}}});export{A as _};
|
||||
@@ -0,0 +1 @@
|
||||
import{O as D,P as y,D as U,C as v,w,F as N}from"./element-plus.f5eb07a0.js";import{_ as O}from"./index.84d368ba.js";import{_ as $}from"./picker.bb543009.js";import{_ as j}from"./picker.6266f853.js";import{f as F}from"./index.aa44aaf7.js";import{D as I}from"./vuedraggable.5917840d.js";import{d as R,o as _,c as T,V as e,M as t,a as m,u as G,L as V,S as L,T as r}from"./@vue.cab01781.js";const M=r("\u5F00\u542F"),P=r("\u505C\u7528"),S={class:"flex-1"},q=m("div",{class:"form-tips"},"\u6700\u591A\u6DFB\u52A05\u5F20\uFF0C\u5EFA\u8BAE\u56FE\u7247\u5C3A\u5BF8\uFF1A750px*200px",-1),z={class:"bg-fill-light flex items-center w-full p-4 mt-4 cursor-move"},H={class:"ml-3 flex-1"},J=r("\u6DFB\u52A0\u56FE\u7247"),te=R({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(a){const s=a,c=5,E=()=>{var u;((u=s.content.data)==null?void 0:u.length)<c?s.content.data.push({image:"",name:"",link:{}}):F.msgError(`\u6700\u591A\u6DFB\u52A0${c}\u5F20\u56FE\u7247`)},g=u=>{var l;if(((l=s.content.data)==null?void 0:l.length)<=1)return F.msgError("\u6700\u5C11\u4FDD\u7559\u4E00\u5F20\u56FE\u7247");s.content.data.splice(u,1)};return(u,l)=>{const i=D,b=y,d=U,h=j,k=v,x=$,B=O,A=w,C=N;return _(),T("div",null,[e(C,{"label-width":"70px"},{default:t(()=>{var p;return[e(d,{label:"\u662F\u5426\u542F\u7528"},{default:t(()=>[e(b,{modelValue:a.content.enabled,"onUpdate:modelValue":l[0]||(l[0]=o=>a.content.enabled=o)},{default:t(()=>[e(i,{label:1},{default:t(()=>[M]),_:1}),e(i,{label:0},{default:t(()=>[P]),_:1})]),_:1},8,["modelValue"])]),_:1}),e(d,{label:"\u56FE\u7247\u8BBE\u7F6E"},{default:t(()=>[m("div",S,[q,e(G(I),{class:"draggable",modelValue:a.content.data,"onUpdate:modelValue":l[1]||(l[1]=o=>a.content.data=o),animation:"300"},{item:t(({element:o,index:f})=>[(_(),V(B,{key:f,onClose:n=>g(f),class:"max-w-[400px]"},{default:t(()=>[m("div",z,[e(h,{modelValue:o.image,"onUpdate:modelValue":n=>o.image=n,"upload-class":"bg-body","exclude-domain":""},null,8,["modelValue","onUpdate:modelValue"]),m("div",H,[e(d,{label:"\u56FE\u7247\u540D\u79F0"},{default:t(()=>[e(k,{modelValue:o.name,"onUpdate:modelValue":n=>o.name=n,placeholder:"\u8BF7\u8F93\u5165\u540D\u79F0"},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),e(d,{class:"mt-[18px]",label:"\u56FE\u7247\u94FE\u63A5"},{default:t(()=>[e(x,{modelValue:o.link,"onUpdate:modelValue":n=>o.link=n},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)])])]),_:2},1032,["onClose"]))]),_:1},8,["modelValue"])])]),_:1}),((p=a.content.data)==null?void 0:p.length)<c?(_(),V(d,{key:0},{default:t(()=>[e(A,{type:"primary",onClick:E},{default:t(()=>[J]),_:1})]),_:1})):L("",!0)]}),_:1})])}}});export{te as _};
|
||||
@@ -1 +1 @@
|
||||
import{O as _,P as i,D as r,C as f,F as p}from"./element-plus.8115766e.js";import{_ as V}from"./add-nav.vue_vue_type_script_setup_true_lang.4d0f9da8.js";import{d as b,o as E,c as x,V as e,M as t,a as F,T as d}from"./@vue.cab01781.js";const y=d("\u6A2A\u6392"),B=d("\u7AD6\u6392"),C={class:"flex-1"},O=b({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(l){return(D,o)=>{const u=_,s=i,n=r,m=f,c=p;return E(),x("div",null,[e(c,{"label-width":"70px"},{default:t(()=>[e(n,{label:"\u6392\u7248\u6837\u5F0F"},{default:t(()=>[e(s,{modelValue:l.content.style,"onUpdate:modelValue":o[0]||(o[0]=a=>l.content.style=a)},{default:t(()=>[e(u,{label:1},{default:t(()=>[y]),_:1}),e(u,{label:2},{default:t(()=>[B]),_:1})]),_:1},8,["modelValue"])]),_:1}),e(n,{label:"\u6807\u9898\u540D\u79F0"},{default:t(()=>[e(m,{class:"w-[400px]",modelValue:l.content.title,"onUpdate:modelValue":o[1]||(o[1]=a=>l.content.title=a)},null,8,["modelValue"])]),_:1}),e(n,{label:"\u83DC\u5355\u8BBE\u7F6E"},{default:t(()=>[F("div",C,[e(V,{modelValue:l.content.data,"onUpdate:modelValue":o[2]||(o[2]=a=>l.content.data=a)},null,8,["modelValue"])])]),_:1})]),_:1})])}}});export{O as _};
|
||||
import{O as _,P as i,D as r,C as f,F as p}from"./element-plus.f5eb07a0.js";import{_ as V}from"./add-nav.vue_vue_type_script_setup_true_lang.856419ed.js";import{d as b,o as E,c as x,V as e,M as t,a as F,T as d}from"./@vue.cab01781.js";const y=d("\u6A2A\u6392"),B=d("\u7AD6\u6392"),C={class:"flex-1"},O=b({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(l){return(D,o)=>{const u=_,s=i,n=r,m=f,c=p;return E(),x("div",null,[e(c,{"label-width":"70px"},{default:t(()=>[e(n,{label:"\u6392\u7248\u6837\u5F0F"},{default:t(()=>[e(s,{modelValue:l.content.style,"onUpdate:modelValue":o[0]||(o[0]=a=>l.content.style=a)},{default:t(()=>[e(u,{label:1},{default:t(()=>[y]),_:1}),e(u,{label:2},{default:t(()=>[B]),_:1})]),_:1},8,["modelValue"])]),_:1}),e(n,{label:"\u6807\u9898\u540D\u79F0"},{default:t(()=>[e(m,{class:"w-[400px]",modelValue:l.content.title,"onUpdate:modelValue":o[1]||(o[1]=a=>l.content.title=a)},null,8,["modelValue"])]),_:1}),e(n,{label:"\u83DC\u5355\u8BBE\u7F6E"},{default:t(()=>[F("div",C,[e(V,{modelValue:l.content.data,"onUpdate:modelValue":o[2]||(o[2]=a=>l.content.data=a)},null,8,["modelValue"])])]),_:1})]),_:1})])}}});export{O as _};
|
||||
@@ -0,0 +1 @@
|
||||
import{O as y,P as U,D as v,C as w,w as N,F as O}from"./element-plus.f5eb07a0.js";import{_ as $}from"./index.84d368ba.js";import{_ as j}from"./picker.bb543009.js";import{_ as I}from"./picker.6266f853.js";import{f as V}from"./index.aa44aaf7.js";import{D as R}from"./vuedraggable.5917840d.js";import{d as T,o as m,c as G,V as e,M as t,L as r,S as E,a as c,u as L,T as i}from"./@vue.cab01781.js";const M=i("\u5F00\u542F"),P=i("\u505C\u7528"),S={class:"flex-1"},q=c("div",{class:"form-tips"},"\u6700\u591A\u6DFB\u52A05\u5F20\uFF0C\u5EFA\u8BAE\u56FE\u7247\u5C3A\u5BF8\uFF1A750px*340px",-1),z={class:"bg-fill-light flex items-center w-full p-4 mt-4 cursor-move"},H={class:"ml-3 flex-1"},J=i("\u6DFB\u52A0\u56FE\u7247"),te=T({__name:"attr",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(a){const s=a,_=5,b=()=>{var n;((n=s.content.data)==null?void 0:n.length)<_?s.content.data.push({image:"",name:"",link:{}}):V.msgError(`\u6700\u591A\u6DFB\u52A0${_}\u5F20\u56FE\u7247`)},g=n=>{var l;if(((l=s.content.data)==null?void 0:l.length)<=1)return V.msgError("\u6700\u5C11\u4FDD\u7559\u4E00\u5F20\u56FE\u7247");s.content.data.splice(n,1)};return(n,l)=>{const p=y,h=U,d=v,k=I,B=w,x=j,A=$,C=N,D=O;return m(),G("div",null,[e(D,{"label-width":"70px"},{default:t(()=>{var f;return[n.type=="mobile"?(m(),r(d,{key:0,label:"\u662F\u5426\u542F\u7528"},{default:t(()=>[e(h,{modelValue:a.content.enabled,"onUpdate:modelValue":l[0]||(l[0]=o=>a.content.enabled=o)},{default:t(()=>[e(p,{label:1},{default:t(()=>[M]),_:1}),e(p,{label:0},{default:t(()=>[P]),_:1})]),_:1},8,["modelValue"])]),_:1})):E("",!0),e(d,{label:"\u56FE\u7247\u8BBE\u7F6E"},{default:t(()=>[c("div",S,[q,e(L(R),{class:"draggable",modelValue:a.content.data,"onUpdate:modelValue":l[1]||(l[1]=o=>a.content.data=o),animation:"300"},{item:t(({element:o,index:F})=>[(m(),r(A,{key:F,onClose:u=>g(F),class:"max-w-[400px]"},{default:t(()=>[c("div",z,[e(k,{modelValue:o.image,"onUpdate:modelValue":u=>o.image=u,"upload-class":"bg-body","exclude-domain":""},null,8,["modelValue","onUpdate:modelValue"]),c("div",H,[e(d,{label:"\u56FE\u7247\u540D\u79F0"},{default:t(()=>[e(B,{modelValue:o.name,"onUpdate:modelValue":u=>o.name=u,placeholder:"\u8BF7\u8F93\u5165\u540D\u79F0"},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),e(d,{class:"mt-[18px]",label:"\u56FE\u7247\u94FE\u63A5"},{default:t(()=>[e(x,{modelValue:o.link,"onUpdate:modelValue":u=>o.link=u},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)])])]),_:2},1032,["onClose"]))]),_:1},8,["modelValue"])])]),_:1}),((f=a.content.data)==null?void 0:f.length)<_?(m(),r(d,{key:1},{default:t(()=>[e(C,{type:"primary",onClick:b},{default:t(()=>[J]),_:1})]),_:1})):E("",!0)]}),_:1})])}}});export{te as _};
|
||||
@@ -1 +0,0 @@
|
||||
import"./auth.vue_vue_type_script_setup_true_lang.fd1472cb.js";import{_ as K}from"./auth.vue_vue_type_script_setup_true_lang.fd1472cb.js";import"./element-plus.8115766e.js";import"./@vue.cab01781.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.66926594.js";import"./axios.2d915936.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./role.c2f1c968.js";import"./index.53063276.js";import"./lodash.b68d77aa.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.a8f9466d.js";import"./color.903ca10f.js";import"./clone.9d64bb7a.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.a96d99f2.js";import"./vue-clipboard3.91d4fd5f.js";import"./clipboard.c0a70c0c.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";import"./menu.1fa1a49d.js";import"./index.15556fef.js";export{K as default};
|
||||
1
frontend/assets/auth.f2a07a12.js
Normal file
1
frontend/assets/auth.f2a07a12.js
Normal file
@@ -0,0 +1 @@
|
||||
import"./auth.vue_vue_type_script_setup_true_lang.7ef0ba85.js";import{_ as K}from"./auth.vue_vue_type_script_setup_true_lang.7ef0ba85.js";import"./element-plus.f5eb07a0.js";import"./@vue.cab01781.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.22a46fd8.js";import"./axios.8058589d.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./role.eef9faf9.js";import"./index.aa44aaf7.js";import"./lodash.bbe6f09f.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.5bd363c0.js";import"./color.232115c1.js";import"./clone.8f44c0eb.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.404eaa9c.js";import"./vue-clipboard3.19ab9072.js";import"./clipboard.6fb7c109.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";import"./menu.0ae9ccbc.js";import"./index.bd5146fc.js";export{K as default};
|
||||
@@ -1 +1 @@
|
||||
import{B as K,V as S,D as T,E as N,F as I}from"./element-plus.8115766e.js";import{a as L,b as M}from"./role.c2f1c968.js";import{m as P}from"./menu.1fa1a49d.js";import{P as j}from"./index.15556fef.js";import{f as q,t as H}from"./index.53063276.js";import{d as O,s as i,r as u,a0 as U,o as z,c as G,V as t,M as c,a as _,n as v}from"./@vue.cab01781.js";const J={class:"edit-popup"},te=O({__name:"auth",emits:["success","close"],setup(Q,{expose:k,emit:p}){const o=i(),f=i(),r=i(),y=u(!1),d=u(!0),h=u([]),m=u([]),l=U({id:"",name:"",remark:"",sort:0,isDisable:0,menus:[]}),C={name:[{required:!0,message:"\u8BF7\u8F93\u5165\u540D\u79F0",trigger:["blur"]}]},b=async()=>{const e=await P();m.value=e,h.value=H(e)},x=()=>{var s,n;const e=(s=o.value)==null?void 0:s.getCheckedKeys(),a=(n=o.value)==null?void 0:n.getHalfCheckedKeys();return e==null||e.unshift.apply(e,a),e},E=()=>{l.menus.forEach(e=>{v(()=>{var a;(a=o.value)==null||a.setChecked(e,!0,!1)})})},F=e=>{const a=m.value;for(let s=0;s<a.length;s++)o.value.store.nodesMap[a[s].id].expanded=e},g=e=>{var a,s;e?(a=o.value)==null||a.setCheckedKeys(h.value.map(n=>n.id)):(s=o.value)==null||s.setCheckedKeys([])},D=async()=>{var e,a;await((e=f.value)==null?void 0:e.validate()),l.menus=x(),await L({...l,menuIds:l.menus.join()}),(a=r.value)==null||a.close(),q.msgSuccess("\u64CD\u4F5C\u6210\u529F"),p("success")},w=()=>{p("close")};return k({open:()=>{var e;(e=r.value)==null||e.open()},setFormData:async e=>{await b();const a=await M({id:e.id});for(const s in l)a[s]!=null&&a[s]!=null&&(l[s]=a[s]);v(()=>{E()})}}),(e,a)=>{const s=K,n=S,B=T,R=N,V=I;return z(),G("div",J,[t(j,{ref_key:"popupRef",ref:r,title:"\u6743\u9650\u8BBE\u7F6E",async:!0,width:"550px",onConfirm:D,onClose:w},{default:c(()=>[t(V,{class:"ls-form",ref_key:"formRef",ref:f,rules:C,model:l,"label-width":"60px"},{default:c(()=>[t(R,{class:"h-[400px] sm:h-[600px]"},{default:c(()=>[t(B,{label:"\u6743\u9650",prop:"menus"},{default:c(()=>[_("div",null,[t(s,{label:"\u5C55\u5F00/\u6298\u53E0",onChange:F}),t(s,{label:"\u5168\u9009/\u4E0D\u5168\u9009",onChange:g}),t(s,{modelValue:d.value,"onUpdate:modelValue":a[0]||(a[0]=A=>d.value=A),label:"\u7236\u5B50\u8054\u52A8"},null,8,["modelValue"]),_("div",null,[t(n,{ref_key:"treeRef",ref:o,data:m.value,props:{label:"menuName",children:"children"},"check-strictly":!d.value,"node-key":"id","default-expand-all":y.value,"show-checkbox":""},null,8,["data","check-strictly","default-expand-all"])])])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1},512)])}}});export{te as _};
|
||||
import{B as K,V as S,D as T,E as N,F as I}from"./element-plus.f5eb07a0.js";import{a as L,b as M}from"./role.eef9faf9.js";import{m as P}from"./menu.0ae9ccbc.js";import{P as j}from"./index.bd5146fc.js";import{f as q,t as H}from"./index.aa44aaf7.js";import{d as O,s as i,r as u,a0 as U,o as z,c as G,V as t,M as c,a as _,n as v}from"./@vue.cab01781.js";const J={class:"edit-popup"},te=O({__name:"auth",emits:["success","close"],setup(Q,{expose:k,emit:p}){const o=i(),f=i(),r=i(),y=u(!1),d=u(!0),h=u([]),m=u([]),l=U({id:"",name:"",remark:"",sort:0,isDisable:0,menus:[]}),C={name:[{required:!0,message:"\u8BF7\u8F93\u5165\u540D\u79F0",trigger:["blur"]}]},b=async()=>{const e=await P();m.value=e,h.value=H(e)},x=()=>{var s,n;const e=(s=o.value)==null?void 0:s.getCheckedKeys(),a=(n=o.value)==null?void 0:n.getHalfCheckedKeys();return e==null||e.unshift.apply(e,a),e},E=()=>{l.menus.forEach(e=>{v(()=>{var a;(a=o.value)==null||a.setChecked(e,!0,!1)})})},F=e=>{const a=m.value;for(let s=0;s<a.length;s++)o.value.store.nodesMap[a[s].id].expanded=e},g=e=>{var a,s;e?(a=o.value)==null||a.setCheckedKeys(h.value.map(n=>n.id)):(s=o.value)==null||s.setCheckedKeys([])},D=async()=>{var e,a;await((e=f.value)==null?void 0:e.validate()),l.menus=x(),await L({...l,menuIds:l.menus.join()}),(a=r.value)==null||a.close(),q.msgSuccess("\u64CD\u4F5C\u6210\u529F"),p("success")},w=()=>{p("close")};return k({open:()=>{var e;(e=r.value)==null||e.open()},setFormData:async e=>{await b();const a=await M({id:e.id});for(const s in l)a[s]!=null&&a[s]!=null&&(l[s]=a[s]);v(()=>{E()})}}),(e,a)=>{const s=K,n=S,B=T,R=N,V=I;return z(),G("div",J,[t(j,{ref_key:"popupRef",ref:r,title:"\u6743\u9650\u8BBE\u7F6E",async:!0,width:"550px",onConfirm:D,onClose:w},{default:c(()=>[t(V,{class:"ls-form",ref_key:"formRef",ref:f,rules:C,model:l,"label-width":"60px"},{default:c(()=>[t(R,{class:"h-[400px] sm:h-[600px]"},{default:c(()=>[t(B,{label:"\u6743\u9650",prop:"menus"},{default:c(()=>[_("div",null,[t(s,{label:"\u5C55\u5F00/\u6298\u53E0",onChange:F}),t(s,{label:"\u5168\u9009/\u4E0D\u5168\u9009",onChange:g}),t(s,{modelValue:d.value,"onUpdate:modelValue":a[0]||(a[0]=A=>d.value=A),label:"\u7236\u5B50\u8054\u52A8"},null,8,["modelValue"]),_("div",null,[t(n,{ref_key:"treeRef",ref:o,data:m.value,props:{label:"menuName",children:"children"},"check-strictly":!d.value,"node-key":"id","default-expand-all":y.value,"show-checkbox":""},null,8,["data","check-strictly","default-expand-all"])])])]),_:1})]),_:1})]),_:1},8,["model"])]),_:1},512)])}}});export{te as _};
|
||||
File diff suppressed because one or more lines are too long
@@ -1,4 +1,4 @@
|
||||
import{c as $,g as B}from"./axios.2d915936.js";var R={exports:{}};/*!
|
||||
import{c as $,g as B}from"./axios.8058589d.js";var R={exports:{}};/*!
|
||||
* clipboard.js v2.0.11
|
||||
* https://clipboardjs.com/
|
||||
*
|
||||
1
frontend/assets/code-preview.326ed395.js
Normal file
1
frontend/assets/code-preview.326ed395.js
Normal file
@@ -0,0 +1 @@
|
||||
import"./code-preview.vue_vue_type_script_setup_true_lang.136e5f05.js";import{_ as H}from"./code-preview.vue_vue_type_script_setup_true_lang.136e5f05.js";import"./element-plus.f5eb07a0.js";import"./@vue.cab01781.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.22a46fd8.js";import"./axios.8058589d.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./index.aa44aaf7.js";import"./lodash.bbe6f09f.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.5bd363c0.js";import"./color.232115c1.js";import"./clone.8f44c0eb.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.404eaa9c.js";import"./vue-clipboard3.19ab9072.js";import"./clipboard.6fb7c109.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";export{H as default};
|
||||
@@ -1 +0,0 @@
|
||||
import"./code-preview.vue_vue_type_script_setup_true_lang.06019e12.js";import{_ as H}from"./code-preview.vue_vue_type_script_setup_true_lang.06019e12.js";import"./element-plus.8115766e.js";import"./@vue.cab01781.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.66926594.js";import"./axios.2d915936.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./index.53063276.js";import"./lodash.b68d77aa.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.a8f9466d.js";import"./color.903ca10f.js";import"./clone.9d64bb7a.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.a96d99f2.js";import"./vue-clipboard3.91d4fd5f.js";import"./clipboard.c0a70c0c.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";export{H as default};
|
||||
@@ -1 +1 @@
|
||||
import{x as k,y as w,E as B,w as D,G as T}from"./element-plus.8115766e.js";import{f as r,b as N}from"./index.53063276.js";import{u as $}from"./vue-clipboard3.91d4fd5f.js";import{d as j,r as F,e as L,a5 as S,o as s,c as i,V as o,M as t,W as U,a8 as G,L as M,a as m,u as P,k as R,T as W}from"./@vue.cab01781.js";const q={class:"code-preview"},z={class:"flex",style:{height:"50vh"}},A=W(" \u590D\u5236 "),Q=j({__name:"code-preview",props:{modelValue:{type:Boolean},code:null},emits:["update:modelValue"],setup(c,{emit:p}){const _=c,{toClipboard:f}=$(),u=F("index0"),b=async l=>{try{await f(l),r.msgSuccess("\u590D\u5236\u6210\u529F")}catch{r.msgError("\u590D\u5236\u5931\u8D25")}},n=L({get(){return _.modelValue},set(l){p("update:modelValue",l)}});return(l,a)=>{const h=S("highlightjs"),V=B,v=N,g=D,x=k,C=w,E=T;return s(),i("div",q,[o(E,{modelValue:P(n),"onUpdate:modelValue":a[1]||(a[1]=e=>R(n)?n.value=e:null),width:"900px",title:"\u4EE3\u7801\u9884\u89C8"},{default:t(()=>[o(C,{modelValue:u.value,"onUpdate:modelValue":a[0]||(a[0]=e=>u.value=e)},{default:t(()=>[(s(!0),i(U,null,G(c.code,(e,d,y)=>(s(),M(x,{label:d,name:`index${y}`,key:d},{default:t(()=>[m("div",z,[o(V,{class:"flex-1"},{default:t(()=>[o(h,{autodetect:"",code:e},null,8,["code"])]),_:2},1024),m("div",null,[o(g,{onClick:H=>b(e),type:"primary",link:""},{icon:t(()=>[o(v,{name:"el-icon-CopyDocument"})]),default:t(()=>[A]),_:2},1032,["onClick"])])])]),_:2},1032,["label","name"]))),128))]),_:1},8,["modelValue"])]),_:1},8,["modelValue"])])}}});export{Q as _};
|
||||
import{x as k,y as w,E as B,w as D,G as T}from"./element-plus.f5eb07a0.js";import{f as r,b as N}from"./index.aa44aaf7.js";import{u as $}from"./vue-clipboard3.19ab9072.js";import{d as j,r as F,e as L,a5 as S,o as s,c as i,V as o,M as t,W as U,a8 as G,L as M,a as m,u as P,k as R,T as W}from"./@vue.cab01781.js";const q={class:"code-preview"},z={class:"flex",style:{height:"50vh"}},A=W(" \u590D\u5236 "),Q=j({__name:"code-preview",props:{modelValue:{type:Boolean},code:null},emits:["update:modelValue"],setup(c,{emit:p}){const _=c,{toClipboard:f}=$(),u=F("index0"),b=async l=>{try{await f(l),r.msgSuccess("\u590D\u5236\u6210\u529F")}catch{r.msgError("\u590D\u5236\u5931\u8D25")}},n=L({get(){return _.modelValue},set(l){p("update:modelValue",l)}});return(l,a)=>{const h=S("highlightjs"),V=B,v=N,g=D,x=k,C=w,E=T;return s(),i("div",q,[o(E,{modelValue:P(n),"onUpdate:modelValue":a[1]||(a[1]=e=>R(n)?n.value=e:null),width:"900px",title:"\u4EE3\u7801\u9884\u89C8"},{default:t(()=>[o(C,{modelValue:u.value,"onUpdate:modelValue":a[0]||(a[0]=e=>u.value=e)},{default:t(()=>[(s(!0),i(U,null,G(c.code,(e,d,y)=>(s(),M(x,{label:d,name:`index${y}`,key:d},{default:t(()=>[m("div",z,[o(V,{class:"flex-1"},{default:t(()=>[o(h,{autodetect:"",code:e},null,8,["code"])]),_:2},1024),m("div",null,[o(g,{onClick:H=>b(e),type:"primary",link:""},{icon:t(()=>[o(v,{name:"el-icon-CopyDocument"})]),default:t(()=>[A]),_:2},1032,["onClick"])])])]),_:2},1032,["label","name"]))),128))]),_:1},8,["modelValue"])]),_:1},8,["modelValue"])])}}});export{Q as _};
|
||||
@@ -1 +1 @@
|
||||
import{r as n}from"./index.53063276.js";function r(e){return n.get({url:"/gen/list",params:e})}function a(e){return n.get({url:"/gen/db",params:e})}function o(e){return n.post({url:"/gen/importTable",params:e},{isParamsToData:!1})}function s(e){return n.get({url:"/gen/detail",params:e})}function u(e){return n.post({url:"/gen/syncTable",params:e},{isParamsToData:!1})}function l(e){return n.post({url:"/gen/delTable",params:e})}function g(e){return n.post({url:"/gen/editTable",params:e})}function i(e){return n.get({url:"/gen/previewCode",params:e})}function d(e){return n.get({url:"/gen/genCode",params:e})}function f(e){return n.get({responseType:"blob",url:"/gen/downloadCode",params:e},{isTransformResponse:!1})}export{l as a,i as b,d as c,f as d,r as e,o as f,g,a as h,u as s,s as t};
|
||||
import{r as n}from"./index.aa44aaf7.js";function r(e){return n.get({url:"/gen/list",params:e})}function a(e){return n.get({url:"/gen/db",params:e})}function o(e){return n.post({url:"/gen/importTable",params:e},{isParamsToData:!1})}function s(e){return n.get({url:"/gen/detail",params:e})}function u(e){return n.post({url:"/gen/syncTable",params:e},{isParamsToData:!1})}function l(e){return n.post({url:"/gen/delTable",params:e})}function g(e){return n.post({url:"/gen/editTable",params:e})}function i(e){return n.get({url:"/gen/previewCode",params:e})}function d(e){return n.get({url:"/gen/genCode",params:e})}function f(e){return n.get({responseType:"blob",url:"/gen/downloadCode",params:e},{isTransformResponse:!1})}export{l as a,i as b,d as c,f as d,r as e,o as f,g,a as h,u as s,s as t};
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1 +1 @@
|
||||
import{r as t}from"./index.53063276.js";function u(r){return t.get({url:"/user/list",params:r})}function s(r){return t.get({url:"/user/detail",params:r})}function i(r){return t.post({url:"/user/edit",params:r})}export{u as a,s as g,i as u};
|
||||
import{r as t}from"./index.aa44aaf7.js";function u(r){return t.get({url:"/user/list",params:r})}function s(r){return t.get({url:"/user/detail",params:r})}function i(r){return t.post({url:"/user/edit",params:r})}export{u as a,s as g,i as u};
|
||||
@@ -1 +1 @@
|
||||
import{d as r}from"./index.53063276.js";import{o as i,c as e,b9 as c,b8 as s,a as o}from"./@vue.cab01781.js";import"./element-plus.8115766e.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.66926594.js";import"./axios.2d915936.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./lodash.b68d77aa.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.a8f9466d.js";import"./color.903ca10f.js";import"./clone.9d64bb7a.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.a96d99f2.js";import"./vue-clipboard3.91d4fd5f.js";import"./clipboard.c0a70c0c.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";const m="/assets/default_avatar.fa19527b.png";const _={},p=t=>(c("data-v-cdcc3d15"),t=t(),s(),t),a={class:"user-info flex items-center px-[25px]"},d=p(()=>o("img",{src:m,class:"w-[60px] h-[60px]",alt:""},null,-1)),n=p(()=>o("div",{class:"text-white text-[18px] ml-[10px]"},"\u672A\u767B\u5F55",-1)),l=[d,n];function x(t,f){return i(),e("div",a,l)}const R=r(_,[["render",x],["__scopeId","data-v-cdcc3d15"]]);export{R as default};
|
||||
import{d as r}from"./index.aa44aaf7.js";import{o as i,c as e,b9 as c,b8 as s,a as o}from"./@vue.cab01781.js";import"./element-plus.f5eb07a0.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.22a46fd8.js";import"./axios.8058589d.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./lodash.bbe6f09f.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.5bd363c0.js";import"./color.232115c1.js";import"./clone.8f44c0eb.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.404eaa9c.js";import"./vue-clipboard3.19ab9072.js";import"./clipboard.6fb7c109.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";const m="/assets/default_avatar.fa19527b.png";const _={},p=t=>(c("data-v-cdcc3d15"),t=t(),s(),t),a={class:"user-info flex items-center px-[25px]"},d=p(()=>o("img",{src:m,class:"w-[60px] h-[60px]",alt:""},null,-1)),n=p(()=>o("div",{class:"text-white text-[18px] ml-[10px]"},"\u672A\u767B\u5F55",-1)),l=[d,n];function x(t,f){return i(),e("div",a,l)}const R=r(_,[["render",x],["__scopeId","data-v-cdcc3d15"]]);export{R as default};
|
||||
@@ -1 +0,0 @@
|
||||
import"./content.vue_vue_type_script_setup_true_lang.e5408794.js";import{_ as I}from"./content.vue_vue_type_script_setup_true_lang.e5408794.js";import"./decoration-img.e07a9eab.js";import"./element-plus.8115766e.js";import"./@vue.cab01781.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.66926594.js";import"./axios.2d915936.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./index.53063276.js";import"./lodash.b68d77aa.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.a8f9466d.js";import"./color.903ca10f.js";import"./clone.9d64bb7a.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.a96d99f2.js";import"./vue-clipboard3.91d4fd5f.js";import"./clipboard.c0a70c0c.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";export{I as default};
|
||||
1
frontend/assets/content.3f7be8fd.js
Normal file
1
frontend/assets/content.3f7be8fd.js
Normal file
@@ -0,0 +1 @@
|
||||
import"./content.vue_vue_type_script_setup_true_lang.3bb51b7a.js";import{_ as I}from"./content.vue_vue_type_script_setup_true_lang.3bb51b7a.js";import"./decoration-img.480c1d38.js";import"./element-plus.f5eb07a0.js";import"./@vue.cab01781.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.22a46fd8.js";import"./axios.8058589d.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./index.aa44aaf7.js";import"./lodash.bbe6f09f.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.5bd363c0.js";import"./color.232115c1.js";import"./clone.8f44c0eb.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.404eaa9c.js";import"./vue-clipboard3.19ab9072.js";import"./clipboard.6fb7c109.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";export{I as default};
|
||||
1
frontend/assets/content.54b8d1d4.js
Normal file
1
frontend/assets/content.54b8d1d4.js
Normal file
@@ -0,0 +1 @@
|
||||
import"./content.vue_vue_type_script_setup_true_lang.afe6098d.js";import{_ as I}from"./content.vue_vue_type_script_setup_true_lang.afe6098d.js";import"./decoration-img.480c1d38.js";import"./element-plus.f5eb07a0.js";import"./@vue.cab01781.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.22a46fd8.js";import"./axios.8058589d.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./index.aa44aaf7.js";import"./lodash.bbe6f09f.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.5bd363c0.js";import"./color.232115c1.js";import"./clone.8f44c0eb.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.404eaa9c.js";import"./vue-clipboard3.19ab9072.js";import"./clipboard.6fb7c109.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";export{I as default};
|
||||
@@ -1 +0,0 @@
|
||||
import"./content.vue_vue_type_script_setup_true_lang.c187246b.js";import{_ as I}from"./content.vue_vue_type_script_setup_true_lang.c187246b.js";import"./decoration-img.e07a9eab.js";import"./element-plus.8115766e.js";import"./@vue.cab01781.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.66926594.js";import"./axios.2d915936.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./index.53063276.js";import"./lodash.b68d77aa.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.a8f9466d.js";import"./color.903ca10f.js";import"./clone.9d64bb7a.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.a96d99f2.js";import"./vue-clipboard3.91d4fd5f.js";import"./clipboard.c0a70c0c.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";export{I as default};
|
||||
@@ -1 +0,0 @@
|
||||
import"./content.vue_vue_type_script_setup_true_lang.f8910cfe.js";import{_ as I}from"./content.vue_vue_type_script_setup_true_lang.f8910cfe.js";import"./decoration-img.e07a9eab.js";import"./element-plus.8115766e.js";import"./@vue.cab01781.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.66926594.js";import"./axios.2d915936.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./index.53063276.js";import"./lodash.b68d77aa.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.a8f9466d.js";import"./color.903ca10f.js";import"./clone.9d64bb7a.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.a96d99f2.js";import"./vue-clipboard3.91d4fd5f.js";import"./clipboard.c0a70c0c.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";export{I as default};
|
||||
@@ -1 +1 @@
|
||||
import i from"./decoration-img.e07a9eab.js";import{d as p,o as r,c as m,V as s,a as o,U as e,b9 as c,b8 as n}from"./@vue.cab01781.js";import{d as a}from"./index.53063276.js";import"./element-plus.8115766e.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.66926594.js";import"./axios.2d915936.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./lodash.b68d77aa.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.a8f9466d.js";import"./color.903ca10f.js";import"./clone.9d64bb7a.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.a96d99f2.js";import"./vue-clipboard3.91d4fd5f.js";import"./clipboard.c0a70c0c.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";const u=t=>(c("data-v-74f49970"),t=t(),n(),t),d={class:"customer-service"},_={class:"text-[15px] mt-[7px] font-medium"},l={class:"text-[#666] mt-[20px]"},x={class:"text-[#666] mt-[7px]"},f=u(()=>o("div",{class:"text-white text-[16px] rounded-[42px] bg-[#4173FF] w-full h-[42px] flex justify-center items-center mt-[50px]"}," \u4FDD\u5B58\u4E8C\u7EF4\u7801\u56FE\u7247 ",-1)),h=p({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(t){return(F,v)=>(r(),m("div",d,[s(i,{width:"140px",height:"140px",src:t.content.qrcode,alt:""},null,8,["src"]),o("div",_,e(t.content.title),1),o("div",l,"\u670D\u52A1\u65F6\u95F4\uFF1A"+e(t.content.time),1),o("div",x,"\u5BA2\u670D\u7535\u8BDD\uFF1A"+e(t.content.mobile),1),f]))}});const Y=a(h,[["__scopeId","data-v-74f49970"]]);export{Y as default};
|
||||
import i from"./decoration-img.480c1d38.js";import{d as p,o as r,c as m,V as s,a as o,U as e,b9 as c,b8 as n}from"./@vue.cab01781.js";import{d as a}from"./index.aa44aaf7.js";import"./element-plus.f5eb07a0.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.22a46fd8.js";import"./axios.8058589d.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./lodash.bbe6f09f.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.5bd363c0.js";import"./color.232115c1.js";import"./clone.8f44c0eb.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.404eaa9c.js";import"./vue-clipboard3.19ab9072.js";import"./clipboard.6fb7c109.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";const u=t=>(c("data-v-74f49970"),t=t(),n(),t),d={class:"customer-service"},_={class:"text-[15px] mt-[7px] font-medium"},l={class:"text-[#666] mt-[20px]"},x={class:"text-[#666] mt-[7px]"},f=u(()=>o("div",{class:"text-white text-[16px] rounded-[42px] bg-[#4173FF] w-full h-[42px] flex justify-center items-center mt-[50px]"}," \u4FDD\u5B58\u4E8C\u7EF4\u7801\u56FE\u7247 ",-1)),h=p({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(t){return(F,v)=>(r(),m("div",d,[s(i,{width:"140px",height:"140px",src:t.content.qrcode,alt:""},null,8,["src"]),o("div",_,e(t.content.title),1),o("div",l,"\u670D\u52A1\u65F6\u95F4\uFF1A"+e(t.content.time),1),o("div",x,"\u5BA2\u670D\u7535\u8BDD\uFF1A"+e(t.content.mobile),1),f]))}});const Y=a(h,[["__scopeId","data-v-74f49970"]]);export{Y as default};
|
||||
@@ -1 +1 @@
|
||||
import{b as x,d as _}from"./index.53063276.js";import a from"./decoration-img.e07a9eab.js";import{d as u,o as t,c as e,a as r,U as s,S as c,W as m,a8 as l,V as p}from"./@vue.cab01781.js";import"./element-plus.8115766e.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.66926594.js";import"./axios.2d915936.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./lodash.b68d77aa.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.a8f9466d.js";import"./color.903ca10f.js";import"./clone.9d64bb7a.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.a96d99f2.js";import"./vue-clipboard3.91d4fd5f.js";import"./clipboard.c0a70c0c.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";const f={class:"my-service"},h={key:0,class:"title px-[15px] py-[10px]"},y={key:1,class:"flex flex-wrap pt-[20px] pb-[10px]"},v={class:"mt-[7px]"},g={key:2},b={class:"ml-[10px] flex-1"},k=u({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(o){return(w,V)=>{const d=x;return t(),e("div",f,[o.content.title?(t(),e("div",h,[r("div",null,s(o.content.title),1)])):c("",!0),o.content.style==1?(t(),e("div",y,[(t(!0),e(m,null,l(o.content.data,(i,n)=>(t(),e("div",{key:n,class:"flex flex-col items-center w-1/4 mb-[15px]"},[p(a,{width:"26px",height:"26px",src:i.image,alt:""},null,8,["src"]),r("div",v,s(i.name),1)]))),128))])):c("",!0),o.content.style==2?(t(),e("div",g,[(t(!0),e(m,null,l(o.content.data,(i,n)=>(t(),e("div",{key:n,class:"flex items-center border-b border-[#e5e5e5] h-[50px] px-[12px]"},[p(a,{width:"24px",height:"24px",src:i.image,alt:""},null,8,["src"]),r("div",b,s(i.name),1),r("div",null,[p(d,{name:"el-icon-ArrowRight"})])]))),128))])):c("",!0)])}}});const ot=_(k,[["__scopeId","data-v-a7e52d47"]]);export{ot as default};
|
||||
import{b as x,d as _}from"./index.aa44aaf7.js";import a from"./decoration-img.480c1d38.js";import{d as u,o as t,c as e,a as r,U as s,S as c,W as m,a8 as l,V as p}from"./@vue.cab01781.js";import"./element-plus.f5eb07a0.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.22a46fd8.js";import"./axios.8058589d.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./lodash.bbe6f09f.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.5bd363c0.js";import"./color.232115c1.js";import"./clone.8f44c0eb.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.404eaa9c.js";import"./vue-clipboard3.19ab9072.js";import"./clipboard.6fb7c109.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";const f={class:"my-service"},h={key:0,class:"title px-[15px] py-[10px]"},y={key:1,class:"flex flex-wrap pt-[20px] pb-[10px]"},v={class:"mt-[7px]"},g={key:2},b={class:"ml-[10px] flex-1"},k=u({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(o){return(w,V)=>{const d=x;return t(),e("div",f,[o.content.title?(t(),e("div",h,[r("div",null,s(o.content.title),1)])):c("",!0),o.content.style==1?(t(),e("div",y,[(t(!0),e(m,null,l(o.content.data,(i,n)=>(t(),e("div",{key:n,class:"flex flex-col items-center w-1/4 mb-[15px]"},[p(a,{width:"26px",height:"26px",src:i.image,alt:""},null,8,["src"]),r("div",v,s(i.name),1)]))),128))])):c("",!0),o.content.style==2?(t(),e("div",g,[(t(!0),e(m,null,l(o.content.data,(i,n)=>(t(),e("div",{key:n,class:"flex items-center border-b border-[#e5e5e5] h-[50px] px-[12px]"},[p(a,{width:"24px",height:"24px",src:i.image,alt:""},null,8,["src"]),r("div",b,s(i.name),1),r("div",null,[p(d,{name:"el-icon-ArrowRight"})])]))),128))])):c("",!0)])}}});const ot=_(k,[["__scopeId","data-v-a7e52d47"]]);export{ot as default};
|
||||
@@ -1 +1 @@
|
||||
import{d as p,b as r}from"./index.53063276.js";import{o as i,c,a as t,V as s,b9 as m,b8 as a}from"./@vue.cab01781.js";import"./element-plus.8115766e.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.66926594.js";import"./axios.2d915936.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./lodash.b68d77aa.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.a8f9466d.js";import"./color.903ca10f.js";import"./clone.9d64bb7a.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.a96d99f2.js";import"./vue-clipboard3.91d4fd5f.js";import"./clipboard.c0a70c0c.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";const _={},n=o=>(m("data-v-6fb29c10"),o=o(),a(),o),d={class:"search"},f={class:"search-con flex items-center px-[15px]"},l=n(()=>t("span",{class:"ml-[5px]"},"\u8BF7\u8F93\u5165\u5173\u952E\u8BCD\u641C\u7D22",-1));function h(o,x){const e=r;return i(),c("div",d,[t("div",f,[s(e,{name:"el-icon-Search",size:17}),l])])}const R=p(_,[["render",h],["__scopeId","data-v-6fb29c10"]]);export{R as default};
|
||||
import{d as p,b as r}from"./index.aa44aaf7.js";import{o as i,c,a as t,V as s,b9 as m,b8 as a}from"./@vue.cab01781.js";import"./element-plus.f5eb07a0.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.22a46fd8.js";import"./axios.8058589d.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./lodash.bbe6f09f.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.5bd363c0.js";import"./color.232115c1.js";import"./clone.8f44c0eb.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.404eaa9c.js";import"./vue-clipboard3.19ab9072.js";import"./clipboard.6fb7c109.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";const _={},n=o=>(m("data-v-6fb29c10"),o=o(),a(),o),d={class:"search"},f={class:"search-con flex items-center px-[15px]"},l=n(()=>t("span",{class:"ml-[5px]"},"\u8BF7\u8F93\u5165\u5173\u952E\u8BCD\u641C\u7D22",-1));function h(o,x){const e=r;return i(),c("div",d,[t("div",f,[s(e,{name:"el-icon-Search",size:17}),l])])}const R=p(_,[["render",h],["__scopeId","data-v-6fb29c10"]]);export{R as default};
|
||||
1
frontend/assets/content.d207a2aa.js
Normal file
1
frontend/assets/content.d207a2aa.js
Normal file
@@ -0,0 +1 @@
|
||||
import"./content.vue_vue_type_script_setup_true_lang.b304c701.js";import{_ as I}from"./content.vue_vue_type_script_setup_true_lang.b304c701.js";import"./decoration-img.480c1d38.js";import"./element-plus.f5eb07a0.js";import"./@vue.cab01781.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.22a46fd8.js";import"./axios.8058589d.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./index.aa44aaf7.js";import"./lodash.bbe6f09f.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.5bd363c0.js";import"./color.232115c1.js";import"./clone.8f44c0eb.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.404eaa9c.js";import"./vue-clipboard3.19ab9072.js";import"./clipboard.6fb7c109.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";export{I as default};
|
||||
@@ -1 +1 @@
|
||||
import{b as n,d as m}from"./index.53063276.js";import{g as d}from"./decoration.a3e48437.js";import{d as l,r as _,o as s,c as i,W as x,a8 as f,a as t,S as u,U as r,V as v,b9 as h,b8 as b}from"./@vue.cab01781.js";import"./element-plus.8115766e.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.66926594.js";import"./axios.2d915936.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./lodash.b68d77aa.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.a8f9466d.js";import"./color.903ca10f.js";import"./clone.9d64bb7a.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.a96d99f2.js";import"./vue-clipboard3.91d4fd5f.js";import"./clipboard.c0a70c0c.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";const y=o=>(h("data-v-3ddd45b2"),o=o(),b(),o),w={class:"news"},g=y(()=>t("div",{class:"flex items-center news-title mx-[10px] my-[15px] text-[17px] font-medium"}," \u6700\u65B0\u8D44\u8BAF ",-1)),B={key:0,class:"mr-[10px]"},D=["src"],S={class:"flex flex-col justify-between flex-1"},V={class:"text-[15px] font-medium line-clamp-2"},j={class:"line-clamp-1 text-sm mt-[8px]"},k={class:"text-[#999] text-xs w-full flex justify-between mt-[8px]"},I={class:"flex items-center"},N={class:"ml-[5px]"},A=l({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(o){const p=_([]);return(async()=>{const c=await d({limit:10});p.value=c})(),(c,F)=>{const a=n;return s(),i("div",w,[g,(s(!0),i(x,null,f(p.value,e=>(s(),i("div",{key:e.id,class:"news-card flex bg-white px-[10px] py-[16px] text-[#333] border-[#f2f2f2] border-b"},[e.image?(s(),i("div",B,[t("img",{src:e.image,class:"w-[120px] h-[90px]"},null,8,D)])):u("",!0),t("div",S,[t("div",V,r(e.title),1),t("div",j,r(e.intro),1),t("div",k,[t("div",null,r(e.createTime),1),t("div",I,[v(a,{name:"el-icon-View"}),t("div",N,r(e.visit),1)])])])]))),128))])}}});const dt=m(A,[["__scopeId","data-v-3ddd45b2"]]);export{dt as default};
|
||||
import{b as n,d as m}from"./index.aa44aaf7.js";import{g as d}from"./decoration.c4bfe19f.js";import{d as l,r as _,o as s,c as i,W as x,a8 as f,a as t,S as u,U as r,V as v,b9 as h,b8 as b}from"./@vue.cab01781.js";import"./element-plus.f5eb07a0.js";import"./@vueuse.724ed0af.js";import"./@element-plus.92b4185f.js";import"./lodash-es.29c53eac.js";import"./dayjs.22a46fd8.js";import"./axios.8058589d.js";import"./async-validator.fb49d0f5.js";import"./@ctrl.82a509e0.js";import"./@popperjs.36402333.js";import"./escape-html.e5dfadb9.js";import"./normalize-wheel-es.8aeb3683.js";import"./lodash.bbe6f09f.js";import"./vue-router.5046cc50.js";import"./pinia.e85e8286.js";import"./vue-demi.bfae2336.js";import"./css-color-function.5bd363c0.js";import"./color.232115c1.js";import"./clone.8f44c0eb.js";import"./color-convert.69e17089.js";import"./color-string.e356f5de.js";import"./color-name.e7a4e1d3.js";import"./nprogress.404eaa9c.js";import"./vue-clipboard3.19ab9072.js";import"./clipboard.6fb7c109.js";import"./echarts.6ad8c478.js";import"./zrender.f91f2f01.js";import"./highlight.js.4ebdf9a4.js";import"./@highlightjs.0ab41b7b.js";const y=o=>(h("data-v-3ddd45b2"),o=o(),b(),o),w={class:"news"},g=y(()=>t("div",{class:"flex items-center news-title mx-[10px] my-[15px] text-[17px] font-medium"}," \u6700\u65B0\u8D44\u8BAF ",-1)),B={key:0,class:"mr-[10px]"},D=["src"],S={class:"flex flex-col justify-between flex-1"},V={class:"text-[15px] font-medium line-clamp-2"},j={class:"line-clamp-1 text-sm mt-[8px]"},k={class:"text-[#999] text-xs w-full flex justify-between mt-[8px]"},I={class:"flex items-center"},N={class:"ml-[5px]"},A=l({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(o){const p=_([]);return(async()=>{const c=await d({limit:10});p.value=c})(),(c,F)=>{const a=n;return s(),i("div",w,[g,(s(!0),i(x,null,f(p.value,e=>(s(),i("div",{key:e.id,class:"news-card flex bg-white px-[10px] py-[16px] text-[#333] border-[#f2f2f2] border-b"},[e.image?(s(),i("div",B,[t("img",{src:e.image,class:"w-[120px] h-[90px]"},null,8,D)])):u("",!0),t("div",S,[t("div",V,r(e.title),1),t("div",j,r(e.intro),1),t("div",k,[t("div",null,r(e.createTime),1),t("div",I,[v(a,{name:"el-icon-View"}),t("div",N,r(e.visit),1)])])])]))),128))])}}});const dt=m(A,[["__scopeId","data-v-3ddd45b2"]]);export{dt as default};
|
||||
@@ -1 +1 @@
|
||||
import o from"./decoration-img.e07a9eab.js";import{d as s,e as c,o as r,c as i,a as p,V as d,u as m}from"./@vue.cab01781.js";const u={class:"banner"},_={class:"banner-image"},h=s({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(t){const n=t,a=c(()=>{const{data:e}=n.content;return Array.isArray(e)&&e[0]?e[0].image:""});return(e,l)=>(r(),i("div",u,[p("div",_,[d(o,{width:"100%",height:"170px",src:m(a),fit:"contain"},null,8,["src"])])]))}});export{h as _};
|
||||
import o from"./decoration-img.480c1d38.js";import{d as s,e as c,o as r,c as i,a as p,V as d,u as m}from"./@vue.cab01781.js";const u={class:"banner"},_={class:"banner-image"},h=s({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(t){const n=t,a=c(()=>{const{data:e}=n.content;return Array.isArray(e)&&e[0]?e[0].image:""});return(e,l)=>(r(),i("div",u,[p("div",_,[d(o,{width:"100%",height:"170px",src:m(a),fit:"contain"},null,8,["src"])])]))}});export{h as _};
|
||||
@@ -1 +1 @@
|
||||
import o from"./decoration-img.e07a9eab.js";import{d as s,e as c,o as r,c as i,a as p,V as m,u as d}from"./@vue.cab01781.js";const u={class:"banner mx-[10px] mt-[10px]"},_={class:"banner-image"},h=s({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(t){const n=t,a=c(()=>{const{data:e}=n.content;return Array.isArray(e)&&e[0]?e[0].image:""});return(e,l)=>(r(),i("div",u,[p("div",_,[m(o,{width:"100%",height:"100px",src:d(a),fit:"contain"},null,8,["src"])])]))}});export{h as _};
|
||||
import o from"./decoration-img.480c1d38.js";import{d as s,e as c,o as r,c as i,a as p,V as m,u as d}from"./@vue.cab01781.js";const u={class:"banner mx-[10px] mt-[10px]"},_={class:"banner-image"},h=s({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(t){const n=t,a=c(()=>{const{data:e}=n.content;return Array.isArray(e)&&e[0]?e[0].image:""});return(e,l)=>(r(),i("div",u,[p("div",_,[m(o,{width:"100%",height:"100px",src:d(a),fit:"contain"},null,8,["src"])])]))}});export{h as _};
|
||||
@@ -1 +1 @@
|
||||
import o from"./decoration-img.e07a9eab.js";import{d as r,o as e,c as t,a,W as l,a8 as p,V as i,U as d}from"./@vue.cab01781.js";const m={class:"nav bg-white pt-[15px] pb-[8px]"},_={class:"flex flex-wrap"},x={class:"mt-[7px]"},b=r({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(n){return(f,u)=>(e(),t("div",m,[a("div",_,[(e(!0),t(l,null,p(n.content.data,(s,c)=>(e(),t("div",{key:c,class:"flex flex-col items-center w-1/5 mb-[15px]"},[i(o,{width:"41px",height:"41px",src:s.image,alt:""},null,8,["src"]),a("div",x,d(s.name),1)]))),128))])]))}});export{b as _};
|
||||
import o from"./decoration-img.480c1d38.js";import{d as r,o as e,c as t,a,W as l,a8 as p,V as i,U as d}from"./@vue.cab01781.js";const m={class:"nav bg-white pt-[15px] pb-[8px]"},_={class:"flex flex-wrap"},x={class:"mt-[7px]"},b=r({__name:"content",props:{content:{type:Object,default:()=>({})},styles:{type:Object,default:()=>({})}},setup(n){return(f,u)=>(e(),t("div",m,[a("div",_,[(e(!0),t(l,null,p(n.content.data,(s,c)=>(e(),t("div",{key:c,class:"flex flex-col items-center w-1/5 mb-[15px]"},[i(o,{width:"41px",height:"41px",src:s.image,alt:""},null,8,["src"]),a("div",x,d(s.name),1)]))),128))])]))}});export{b as _};
|
||||
File diff suppressed because one or more lines are too long
Binary file not shown.
|
Before Width: | Height: | Size: 84 KiB |
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user