0.0.5
13
admin/.env.development
Normal file
@ -0,0 +1,13 @@
|
||||
NODE_ENV = 'development'
|
||||
|
||||
# api请求地址
|
||||
VITE_APP_BASE_URL='/adminapi/'
|
||||
|
||||
# 图片服务器地址
|
||||
VITE_IMG_DOMAIN=''
|
||||
|
||||
# 请求时header中token的参数名
|
||||
VITE_REQUEST_HEADER_TOKEN_KEY='token'
|
||||
|
||||
# 请求时header中站点的参数名
|
||||
VITE_REQUEST_HEADER_SITEID_KEY='site-id'
|
||||
13
admin/.env.production
Normal file
@ -0,0 +1,13 @@
|
||||
NODE_ENV = 'production'
|
||||
|
||||
# api请求地址
|
||||
VITE_APP_BASE_URL='/adminapi/'
|
||||
|
||||
# 图片服务器地址
|
||||
VITE_IMG_DOMAIN=''
|
||||
|
||||
# 请求时header中token的参数名
|
||||
VITE_REQUEST_HEADER_TOKEN_KEY='token'
|
||||
|
||||
# 请求时header中站点的参数名
|
||||
VITE_REQUEST_HEADER_SITEID_KEY='site-id'
|
||||
27
admin/.eslintrc.json
Normal file
@ -0,0 +1,27 @@
|
||||
{
|
||||
"env": {
|
||||
"browser": true,
|
||||
"es2021": true
|
||||
},
|
||||
"extends": [
|
||||
"plugin:vue/vue3-essential",
|
||||
"standard-with-typescript",
|
||||
"eslint:recommended"
|
||||
],
|
||||
"overrides": [
|
||||
],
|
||||
"parserOptions": {
|
||||
"ecmaVersion": "latest",
|
||||
"sourceType": "module",
|
||||
"parser": "@typescript-eslint/parser"
|
||||
},
|
||||
"plugins": [
|
||||
"vue",
|
||||
"@typescript-eslint"
|
||||
],
|
||||
"rules": {
|
||||
"no-tabs":"off",
|
||||
"indent": [1, 4, { "SwitchCase": 1 }],
|
||||
"eqeqeq":"off"
|
||||
}
|
||||
}
|
||||
24
admin/.gitignore
vendored
Normal file
@ -0,0 +1,24 @@
|
||||
# Logs
|
||||
logs
|
||||
*.log
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
pnpm-debug.log*
|
||||
lerna-debug.log*
|
||||
|
||||
node_modules
|
||||
dist
|
||||
dist-ssr
|
||||
*.local
|
||||
|
||||
# Editor directories and files
|
||||
.vscode/*
|
||||
!.vscode/extensions.json
|
||||
.idea
|
||||
.DS_Store
|
||||
*.suo
|
||||
*.ntvs*
|
||||
*.njsproj
|
||||
*.sln
|
||||
*.sw?
|
||||
18
admin/README.md
Normal file
@ -0,0 +1,18 @@
|
||||
# Vue 3 + TypeScript + Vite
|
||||
|
||||
This template should help get you started developing with Vue 3 and TypeScript in Vite. The template uses Vue 3 `<script setup>` SFCs, check out the [script setup docs](https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup) to learn more.
|
||||
|
||||
## Recommended IDE Setup
|
||||
|
||||
- [VS Code](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) (and disable Vetur) + [TypeScript Vue Plugin (Volar)](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin).
|
||||
|
||||
## Type Support For `.vue` Imports in TS
|
||||
|
||||
TypeScript cannot handle type information for `.vue` imports by default, so we replace the `tsc` CLI with `vue-tsc` for type checking. In editors, we need [TypeScript Vue Plugin (Volar)](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin) to make the TypeScript language service aware of `.vue` types.
|
||||
|
||||
If the standalone TypeScript plugin doesn't feel fast enough to you, Volar has also implemented a [Take Over Mode](https://github.com/johnsoncodehk/volar/discussions/471#discussioncomment-1361669) that is more performant. You can enable it by the following steps:
|
||||
|
||||
1. Disable the built-in TypeScript Extension
|
||||
1. Run `Extensions: Show Built-in Extensions` from VSCode's command palette
|
||||
2. Find `TypeScript and JavaScript Language Features`, right click and select `Disable (Workspace)`
|
||||
2. Reload the VSCode window by running `Developer: Reload Window` from the command palette.
|
||||
6
admin/auto-imports.d.ts
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
// Generated by 'unplugin-auto-import'
|
||||
export {}
|
||||
declare global {
|
||||
const ElMessage: typeof import('element-plus/es')['ElMessage']
|
||||
const ElNotification: typeof import('element-plus/es')['ElNotification']
|
||||
}
|
||||
94
admin/components.d.ts
vendored
Normal file
@ -0,0 +1,94 @@
|
||||
// generated by unplugin-vue-components
|
||||
// We suggest you to commit this file into source control
|
||||
// Read more: https://github.com/vuejs/core/pull/3399
|
||||
import '@vue/runtime-core'
|
||||
|
||||
export {}
|
||||
|
||||
declare module '@vue/runtime-core' {
|
||||
export interface GlobalComponents {
|
||||
Attachment: typeof import('./src/components/upload-attachment/attachment.vue')['default']
|
||||
DiyLink: typeof import('./src/components/diy-link/index.vue')['default']
|
||||
Editor: typeof import('./src/components/editor/index.vue')['default']
|
||||
ElAlert: typeof import('element-plus/es')['ElAlert']
|
||||
ElAside: typeof import('element-plus/es')['ElAside']
|
||||
ElAvatar: typeof import('element-plus/es')['ElAvatar']
|
||||
ElBreadcrumb: typeof import('element-plus/es')['ElBreadcrumb']
|
||||
ElBreadcrumbItem: typeof import('element-plus/es')['ElBreadcrumbItem']
|
||||
ElButton: typeof import('element-plus/es')['ElButton']
|
||||
ElCard: typeof import('element-plus/es')['ElCard']
|
||||
ElCheckbox: typeof import('element-plus/es')['ElCheckbox']
|
||||
ElCheckboxGroup: typeof import('element-plus/es')['ElCheckboxGroup']
|
||||
ElCol: typeof import('element-plus/es')['ElCol']
|
||||
ElCollapse: typeof import('element-plus/es')['ElCollapse']
|
||||
ElCollapseItem: typeof import('element-plus/es')['ElCollapseItem']
|
||||
ElColorPicker: typeof import('element-plus/es')['ElColorPicker']
|
||||
ElConfigProvider: typeof import('element-plus/es')['ElConfigProvider']
|
||||
ElContainer: typeof import('element-plus/es')['ElContainer']
|
||||
ElDatePicker: typeof import('element-plus/es')['ElDatePicker']
|
||||
ElDescriptions: typeof import('element-plus/es')['ElDescriptions']
|
||||
ElDescriptionsItem: typeof import('element-plus/es')['ElDescriptionsItem']
|
||||
ElDialog: typeof import('element-plus/es')['ElDialog']
|
||||
ElDrawer: typeof import('element-plus/es')['ElDrawer']
|
||||
ElDropdown: typeof import('element-plus/es')['ElDropdown']
|
||||
ElDropdownItem: typeof import('element-plus/es')['ElDropdownItem']
|
||||
ElDropdownMenu: typeof import('element-plus/es')['ElDropdownMenu']
|
||||
ElEmpty: typeof import('element-plus/es')['ElEmpty']
|
||||
ElForm: typeof import('element-plus/es')['ElForm']
|
||||
ElFormItem: typeof import('element-plus/es')['ElFormItem']
|
||||
ElHeader: typeof import('element-plus/es')['ElHeader']
|
||||
ElIcon: typeof import('element-plus/es')['ElIcon']
|
||||
ElImage: typeof import('element-plus/es')['ElImage']
|
||||
ElImageViewer: typeof import('element-plus/es')['ElImageViewer']
|
||||
ElInput: typeof import('element-plus/es')['ElInput']
|
||||
ElInputNumber: typeof import('element-plus/es')['ElInputNumber']
|
||||
ElLink: typeof import('element-plus/es')['ElLink']
|
||||
ElMain: typeof import('element-plus/es')['ElMain']
|
||||
ElMenu: typeof import('element-plus/es')['ElMenu']
|
||||
ElMenuItem: typeof import('element-plus/es')['ElMenuItem']
|
||||
ElOption: typeof import('element-plus/es')['ElOption']
|
||||
ElOptionGroup: typeof import('element-plus/es')['ElOptionGroup']
|
||||
ElPagination: typeof import('element-plus/es')['ElPagination']
|
||||
ElPopover: typeof import('element-plus/es')['ElPopover']
|
||||
ElRadio: typeof import('element-plus/es')['ElRadio']
|
||||
ElRadioGroup: typeof import('element-plus/es')['ElRadioGroup']
|
||||
ElResult: typeof import('element-plus/es')['ElResult']
|
||||
ElRow: typeof import('element-plus/es')['ElRow']
|
||||
ElScrollbar: typeof import('element-plus/es')['ElScrollbar']
|
||||
ElSelect: typeof import('element-plus/es')['ElSelect']
|
||||
ElSlider: typeof import('element-plus/es')['ElSlider']
|
||||
ElStatistic: typeof import('element-plus/es')['ElStatistic']
|
||||
ElStep: typeof import('element-plus/es')['ElStep']
|
||||
ElSteps: typeof import('element-plus/es')['ElSteps']
|
||||
ElSubMenu: typeof import('element-plus/es')['ElSubMenu']
|
||||
ElSwitch: typeof import('element-plus/es')['ElSwitch']
|
||||
ElTable: typeof import('element-plus/es')['ElTable']
|
||||
ElTableColumn: typeof import('element-plus/es')['ElTableColumn']
|
||||
ElTabPane: typeof import('element-plus/es')['ElTabPane']
|
||||
ElTabs: typeof import('element-plus/es')['ElTabs']
|
||||
ElTag: typeof import('element-plus/es')['ElTag']
|
||||
ElTooltip: typeof import('element-plus/es')['ElTooltip']
|
||||
ElTree: typeof import('element-plus/es')['ElTree']
|
||||
ElTreeSelect: typeof import('element-plus/es')['ElTreeSelect']
|
||||
ElUpload: typeof import('element-plus/es')['ElUpload']
|
||||
HeatMap: typeof import('./src/components/heat-map/index.vue')['default']
|
||||
Icon: typeof import('./src/components/icon/index.vue')['default']
|
||||
PopoverInput: typeof import('./src/components/popover-input/index.vue')['default']
|
||||
RangeInput: typeof import('./src/components/range-input/index.vue')['default']
|
||||
RouterLink: typeof import('vue-router')['RouterLink']
|
||||
RouterView: typeof import('vue-router')['RouterView']
|
||||
SelectArea: typeof import('./src/components/select-area/index.vue')['default']
|
||||
SelectIcon: typeof import('./src/components/select-icon/index.vue')['default']
|
||||
UploadAttachment: typeof import('./src/components/upload-attachment/index.vue')['default']
|
||||
UploadFile: typeof import('./src/components/upload-file/index.vue')['default']
|
||||
UploadImage: typeof import('./src/components/upload-image/index.vue')['default']
|
||||
UploadVideo: typeof import('./src/components/upload-video/index.vue')['default']
|
||||
Verify: typeof import('./src/components/verifition/Verify.vue')['default']
|
||||
VerifyPoints: typeof import('./src/components/verifition/Verify/VerifyPoints.vue')['default']
|
||||
VerifySlide: typeof import('./src/components/verifition/Verify/VerifySlide.vue')['default']
|
||||
VideoPlayer: typeof import('./src/components/video-player/index.vue')['default']
|
||||
}
|
||||
export interface ComponentCustomProperties {
|
||||
vLoading: typeof import('element-plus/es')['ElLoadingDirective']
|
||||
}
|
||||
}
|
||||
13
admin/index.html
Normal file
@ -0,0 +1,13 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<link rel="icon" type="image" href="/niucloud.ico" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title></title>
|
||||
</head>
|
||||
<body>
|
||||
<div id="app"></div>
|
||||
<script type="module" src="/src/main.ts"></script>
|
||||
</body>
|
||||
</html>
|
||||
11641
admin/package-lock.json
generated
Normal file
55
admin/package.json
Normal file
@ -0,0 +1,55 @@
|
||||
{
|
||||
"name": "admin",
|
||||
"private": true,
|
||||
"version": "1.0.0",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"dev": "vite",
|
||||
"build": "vite build",
|
||||
"preview": "vite preview"
|
||||
},
|
||||
"dependencies": {
|
||||
"@element-plus/icons-vue": "^2.0.10",
|
||||
"@highlightjs/vue-plugin": "^2.1.0",
|
||||
"@vueuse/core": "^9.12.0",
|
||||
"@wangeditor/editor": "^5.1.23",
|
||||
"@wangeditor/editor-for-vue": "^5.1.12",
|
||||
"axios": "^1.4.0",
|
||||
"crypto-js": "^4.1.1",
|
||||
"css-color-function": "^1.3.3",
|
||||
"echarts": "^5.4.1",
|
||||
"element-plus": "^2.2.29",
|
||||
"nprogress": "^0.2.0",
|
||||
"pinia": "^2.0.30",
|
||||
"qrcode": "^1.5.1",
|
||||
"sass": "^1.58.0",
|
||||
"sortablejs": "^1.15.0",
|
||||
"vue": "^3.2.45",
|
||||
"vue-i18n": "^9.2.2",
|
||||
"vue-router": "^4.1.6",
|
||||
"vue-web-terminal": "^3.1.7",
|
||||
"vue3-video-play": "^1.3.1-beta.6",
|
||||
"vue-jsonp": "^2.0.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@tailwindcss/line-clamp": "^0.4.2",
|
||||
"@types/qrcode": "^1.5.0",
|
||||
"@types/sortablejs": "^1.15.0",
|
||||
"@typescript-eslint/eslint-plugin": "^5.53.0",
|
||||
"@vitejs/plugin-vue": "^4.0.0",
|
||||
"autoprefixer": "^10.4.13",
|
||||
"eslint": "^8.34.0",
|
||||
"eslint-config-standard-with-typescript": "^34.0.0",
|
||||
"eslint-plugin-import": "^2.27.5",
|
||||
"eslint-plugin-n": "^15.6.1",
|
||||
"eslint-plugin-promise": "^6.1.1",
|
||||
"eslint-plugin-vue": "^9.9.0",
|
||||
"postcss": "^8.4.21",
|
||||
"tailwindcss": "^3.2.4",
|
||||
"typescript": "^4.9.5",
|
||||
"unplugin-auto-import": "^0.13.0",
|
||||
"unplugin-vue-components": "^0.23.0",
|
||||
"vite": "^4.1.0",
|
||||
"vue-tsc": "^1.0.24"
|
||||
}
|
||||
}
|
||||
6
admin/postcss.config.cjs
Normal file
@ -0,0 +1,6 @@
|
||||
module.exports = {
|
||||
plugins: {
|
||||
tailwindcss: {},
|
||||
autoprefixer: {}
|
||||
}
|
||||
}
|
||||
BIN
admin/public/niucloud.ico
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
38
admin/src/App.vue
Normal file
@ -0,0 +1,38 @@
|
||||
<template>
|
||||
<el-config-provider :locale="locale">
|
||||
<router-view></router-view>
|
||||
</el-config-provider>
|
||||
</template>
|
||||
|
||||
<script lang="ts" setup>
|
||||
import { computed, onMounted, watch } from 'vue'
|
||||
import zhCn from 'element-plus/dist/locale/zh-cn.mjs'
|
||||
import en from 'element-plus/dist/locale/en.mjs'
|
||||
import useSystemStore from '@/stores/modules/system'
|
||||
import useAppStore from '@/stores/modules/app'
|
||||
import { useDark, useToggle } from '@vueuse/core'
|
||||
import { setThemeColor } from '@/utils/common'
|
||||
import { useRoute } from 'vue-router'
|
||||
|
||||
const route = useRoute()
|
||||
|
||||
// 初始化设置语言
|
||||
const systemStore = useSystemStore()
|
||||
const locale = computed(() => (systemStore.lang === 'zh-cn' ? zhCn : en))
|
||||
|
||||
const toggleDark = useToggle(useDark())
|
||||
|
||||
watch(route, () => {
|
||||
useAppStore().$patch(state => {
|
||||
state.route = route
|
||||
})
|
||||
}, { immediate: true })
|
||||
|
||||
onMounted(() => {
|
||||
// 设置主题色
|
||||
toggleDark(systemStore.dark)
|
||||
setThemeColor(systemStore.theme, systemStore.dark ? 'dark' : 'light')
|
||||
})
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped></style>
|
||||
92
admin/src/app/api/addon.ts
Normal file
@ -0,0 +1,92 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
/**
|
||||
* 本地下载的插件列表
|
||||
* @returns
|
||||
*/
|
||||
export function getAddonLocal(params: Record<string, any>) {
|
||||
return request.get('addon/local', params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 插件详情
|
||||
* @returns
|
||||
*/
|
||||
export function getAddonDetial(id: number) {
|
||||
return request.get(`addon/${id}`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 安装插件
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function installAddon(params: Record<string, any>) {
|
||||
return request.post(`addon/install/${params.addon}`, params)
|
||||
}
|
||||
|
||||
/**
|
||||
* 安装插件
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function cloudInstallAddon(params: Record<string, any>) {
|
||||
return request.post(`addon/cloudinstall/${params.addon}`, params, { timeout: 60 * 1000 })
|
||||
}
|
||||
|
||||
/**
|
||||
* 卸载插件
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function uninstallAddon(params: Record<string, any>) {
|
||||
return request.post(`addon/uninstall/${params.addon}`, params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 插件安装前检测
|
||||
* @param addon
|
||||
* @returns
|
||||
*/
|
||||
export function preInstallCheck(addon: string) {
|
||||
return request.get(`addon/install/check/${addon}`, { timeout: 30 * 1000 })
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取正在安装的插件
|
||||
* @returns
|
||||
*/
|
||||
export function getAddonInstalltask() {
|
||||
return request.get('addon/installtask')
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取插件云安装日志
|
||||
* @param addon
|
||||
* @returns
|
||||
*/
|
||||
export function getAddonCloudInstallLog(addon: string) {
|
||||
return request.get(`addon/cloudinstall/${addon}`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 插件卸载前检测
|
||||
* @param addon
|
||||
* @returns
|
||||
*/
|
||||
export function preUninstallCheck(addon: string) {
|
||||
return request.get(`addon/uninstall/check/${addon}`, { timeout: 30 * 1000 })
|
||||
}
|
||||
|
||||
/**
|
||||
* 取消插件安装
|
||||
* @param addon
|
||||
* @returns
|
||||
*/
|
||||
export function cancelInstall(addon: string) {
|
||||
return request.put(`addon/install/cancel/${addon}`, {}, { showErrorMessage: false })
|
||||
}
|
||||
|
||||
export function getInstalledAddonList() {
|
||||
return request.get('addon/list/install')
|
||||
}
|
||||
26
admin/src/app/api/aliapp.ts
Normal file
@ -0,0 +1,26 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
/**
|
||||
* 获取支付宝小程序配置
|
||||
* @returns
|
||||
*/
|
||||
export function getAliappConfig() {
|
||||
return request.get('aliapp/config')
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑支付宝小程序配置
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function setAliappConfig(params: Record<string, any>) {
|
||||
return request.put('aliapp/config', params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取支付宝小程序静态资源
|
||||
* @returns
|
||||
*/
|
||||
export function getAliappStatic() {
|
||||
return request.get('aliapp/static')
|
||||
}
|
||||
41
admin/src/app/api/auth.ts
Normal file
@ -0,0 +1,41 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
/**
|
||||
* 登录
|
||||
* @param params
|
||||
* @param app_type
|
||||
*/
|
||||
export function login(params: Record<string, any>, app_type: string) {
|
||||
return request.get(`login/${app_type}`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取登录用户权限
|
||||
* @returns
|
||||
*/
|
||||
export function getAuthMenus(params: Record<string, any>) {
|
||||
return request.get('auth/authmenu', {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取登录用户权限
|
||||
* @returns
|
||||
*/
|
||||
export function getSiteInfo() {
|
||||
return request.get('auth/site')
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取登录配置信息
|
||||
* @returns
|
||||
*/
|
||||
export function getLoginConfig() {
|
||||
return request.get('login/config')
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取当前版本信息
|
||||
*/
|
||||
export function getVersions() {
|
||||
return request.get(`sys/info`)
|
||||
}
|
||||
81
admin/src/app/api/dict.ts
Normal file
@ -0,0 +1,81 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
/**
|
||||
* 获取数据字典列表
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getDictList(params: Record<string, any>) {
|
||||
return request.get(`dict/dict`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取数据字典详情
|
||||
* @param id 数据字典id
|
||||
* @returns
|
||||
*/
|
||||
export function getDictInfo(id: number) {
|
||||
return request.get(`dict/dict/${id}`);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加数据字典
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function addDict(params: Record<string, any>) {
|
||||
return request.post('dict/dict', params, { showErrorMessage: true, showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑数据字典
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function addDictData(params: Record<string, any>) {
|
||||
return request.put(`dict/dict/${params.id}`, params, { showErrorMessage: true, showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑数据字典
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function editDict(params: Record<string, any>) {
|
||||
return request.put(`dict/dict/${params.id}`, params, { showErrorMessage: true, showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除数据字典
|
||||
* @param id
|
||||
* @returns
|
||||
*/
|
||||
export function deleteDict(id: number) {
|
||||
return request.delete(`dict/dict/${id}`, { showErrorMessage: true, showSuccessMessage: true })
|
||||
}
|
||||
/**
|
||||
* 编辑数据字典内容
|
||||
* @param id
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function setDictData(id:number,params: Record<string, any>) {
|
||||
return request.put(`dict/dictionary/${id}`, params, { showErrorMessage: true,showSuccessMessage: true })
|
||||
}
|
||||
/**
|
||||
* 获取数据字典列表全部
|
||||
* @returns
|
||||
*/
|
||||
export function getDictAll() {
|
||||
return request.get(`dict/all`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 数据字典关键词查询
|
||||
* @param type
|
||||
* @returns
|
||||
*/
|
||||
export function useDictionary(type: string) {
|
||||
return request.get(`dict/dictionary/type/${type}`)
|
||||
}
|
||||
|
||||
161
admin/src/app/api/diy.ts
Normal file
@ -0,0 +1,161 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
/***************************************************** 自定义页面 ****************************************************/
|
||||
|
||||
/**
|
||||
* 获取自定义页面分页列表
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getDiyPageList(params: Record<string, any>) {
|
||||
return request.get(`diy/diy`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取自定义页面列表
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getDiyList(params: Record<string, any>) {
|
||||
return request.get(`diy/list`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取自定义页面详情
|
||||
* @param id 自定义页面id
|
||||
* @returns
|
||||
*/
|
||||
export function getDiyPageInfo(id: number) {
|
||||
return request.get(`diy/diy/${id}`);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加自定义页面
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function addDiyPage(params: Record<string, any>) {
|
||||
return request.post('diy/diy', params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑自定义页面
|
||||
* @param params
|
||||
*/
|
||||
export function editDiyPage(params: Record<string, any>) {
|
||||
return request.put(`diy/diy/${params.id}`, params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 设为使用
|
||||
* @param params
|
||||
*/
|
||||
export function setUseDiyPage(params: Record<string, any>) {
|
||||
return request.put(`diy/use`, params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改自定义页面分享内容
|
||||
* @param params
|
||||
*/
|
||||
export function editDiyPageShare(params: Record<string, any>) {
|
||||
return request.put(`diy/diy/share`, params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除自定义页面
|
||||
* @param id
|
||||
* @returns
|
||||
*/
|
||||
export function deleteDiyPage(id: number) {
|
||||
return request.delete(`diy/diy/${id}`, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取自定义页面初始化数据
|
||||
*/
|
||||
export function initPage(params: Record<string, any>) {
|
||||
return request.get(`diy/init`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取自定义链接列表
|
||||
*/
|
||||
export function getLink(params: Record<string, any>) {
|
||||
return request.get(`diy/link`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取底部导航数据
|
||||
*/
|
||||
export function getDiyBottom(params: Record<string, any>) {
|
||||
return request.get(`diy/bottom`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 配置底部导航数据
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function setDiyBottom(params: Record<string, any>) {
|
||||
return request.post('diy/bottom', params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取页面模板
|
||||
*/
|
||||
export function getDiyTemplate(params: Record<string, any>) {
|
||||
return request.get(`diy/template`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取自定义路由列表
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getDiyRouteList(params: Record<string, any>) {
|
||||
return request.get(`diy/route`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取自定义路由信息
|
||||
* @param params
|
||||
*/
|
||||
export function getDiyRouteInfo(params: Record<string, any>) {
|
||||
return request.get(`diy/route/info`, {params});
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改路由页面分享内容
|
||||
* @param params
|
||||
*/
|
||||
export function editDiyRouteShare(params: Record<string, any>) {
|
||||
return request.put(`diy/route/share`, params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取自定义页面列表
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getDecoratePage(params: Record<string, any>) {
|
||||
return request.get(`diy/decorate`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 切换模板
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function changeTemplate(params: Record<string, any>) {
|
||||
return request.put(`diy/change`, params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取预览数据
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getPreviewData(params: Record<string, any>) {
|
||||
return request.put(`diy/preview`, params, {showSuccessMessage: false})
|
||||
}
|
||||
18
admin/src/app/api/h5.ts
Normal file
@ -0,0 +1,18 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
/**
|
||||
* 获取h5配置
|
||||
* @returns
|
||||
*/
|
||||
export function getH5Config() {
|
||||
return request.get('channel/h5/config')
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑h5配置
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function setH5Config(params: Record<string, any>) {
|
||||
return request.put('channel/h5/config', params, {showSuccessMessage: true})
|
||||
}
|
||||
5
admin/src/app/api/home.ts
Normal file
@ -0,0 +1,5 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
export function getHomeSite(params: Record<string, any>) {
|
||||
return request.get(`home/site`, { params })
|
||||
}
|
||||
354
admin/src/app/api/member.ts
Normal file
@ -0,0 +1,354 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
|
||||
/***************************************************** 会员管理 ****************************************************/
|
||||
|
||||
/**
|
||||
* 获取会员列表
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getMemberList(params: Record<string, any>) {
|
||||
return request.get(`member/member`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取会员详情
|
||||
* @param id 会员id
|
||||
* @returns
|
||||
*/
|
||||
export function getMemberInfo(id: number) {
|
||||
return request.get(`member/member/${id}`);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取会员编码
|
||||
* @returns
|
||||
*/
|
||||
export function getMemberNo() {
|
||||
return request.get(`member/memberno`);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加会员
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function addMember(params: Record<string, any>) {
|
||||
return request.post(`member/member`, params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 会员注册方式
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getRegisterType(params: Record<string, any>) {
|
||||
return request.get(`member/registertype`, params)
|
||||
}
|
||||
|
||||
/**
|
||||
* 会员注册渠道
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getRegisterChannelType(params: Record<string, any>) {
|
||||
return request.get(`member/register/channel`, params)
|
||||
}
|
||||
|
||||
/**
|
||||
* 会员删除
|
||||
* @param member_id
|
||||
*/
|
||||
export function deleteMember(member_id: number) {
|
||||
return request.delete(`member/member/${member_id}`, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
|
||||
/***************************************************** 会员标签 ****************************************************/
|
||||
|
||||
/**
|
||||
* 获取会员标签列表
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getMemberLabelList(params: Record<string, any>) {
|
||||
return request.get(`member/label`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取会员标签详情
|
||||
* @param label_id 会员标签label_id
|
||||
* @returns
|
||||
*/
|
||||
export function getMemberLabelInfo(label_id: number) {
|
||||
return request.get(`member/label/${label_id}`);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加会员标签
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function addMemberLabel(params: Record<string, any>) {
|
||||
return request.post('member/label', params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑会员标签
|
||||
* @param params
|
||||
*/
|
||||
export function updateMemberLabel(params: Record<string, any>) {
|
||||
return request.put(`member/label/${params.label_id}`, params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除会员标签
|
||||
* @param label_id
|
||||
* @returns
|
||||
*/
|
||||
export function deleteMemberLabel(label_id: number) {
|
||||
return request.delete(`member/label/${label_id}`, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取全部会员标签
|
||||
*/
|
||||
export function getMemberLabelAll() {
|
||||
return request.get(`member/label/all`);
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑会员详情
|
||||
* @param params
|
||||
*/
|
||||
export function editMemberDetail(params: Record<string, any>) {
|
||||
return request.put(`member/member/modify/${params.member_id}/${params.field}`, params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/***************************************************** 会员零钱 ****************************************************/
|
||||
|
||||
|
||||
/***************************************************** 会员账户 ****************************************************/
|
||||
|
||||
/**
|
||||
* 账户变动方式
|
||||
* @param change_type
|
||||
*/
|
||||
export function getChangeTypeList(change_type: string) {
|
||||
return request.get(`member/account/change_type/${change_type}`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 会员积分流水
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getPointList(params: Record<string, any>) {
|
||||
return request.get(`member/account/point`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 会员余额流水
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getBalanceList(params: Record<string, any>) {
|
||||
return request.get(`member/account/balance`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取会员可提现余额列表
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getMoneyList(params: Record<string, any>) {
|
||||
return request.get(`member/account/money`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取会员佣金列表
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getCommissionList(params: Record<string, any>) {
|
||||
return request.get(`member/account/commission`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 会员积分调整
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function adjustPoint(params: Record<string, any>) {
|
||||
return request.post(`member/account/point`, params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 会员余额调整
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function adjustBalance(params: Record<string, any>) {
|
||||
return request.post(`member/account/balance`, params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/***************************************************** 会员相关设置 ****************************************************/
|
||||
|
||||
/**
|
||||
* 获取登录设置
|
||||
*/
|
||||
export function getLoginConfig() {
|
||||
return request.get(`member/config/login`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 注册登录设置
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function setLoginConfig(params: Record<string, any>) {
|
||||
return request.post(`member/config/login`, params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取会员设置
|
||||
*/
|
||||
export function getMemberConfig() {
|
||||
return request.get(`member/config/member`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 会员设置
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function setMemberConfig(params: Record<string, any>) {
|
||||
return request.post(`member/config/member`, params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 获取会员转账方式
|
||||
*/
|
||||
export function getTransfertype() {
|
||||
return request.get(`member/cash_out/transfertype`)
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 佣金统计
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getCommissionSum(params: Record<string, any>) {
|
||||
return request.get(`member/account/sum_commission`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 积分统计
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getPointSum(params: Record<string, any>) {
|
||||
return request.get(`member/account/sum_point`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 余额统计
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getBalanceSum(params: Record<string, any>) {
|
||||
return request.get(`member/account/sum_balance`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 余额类型
|
||||
*/
|
||||
export function getBalanceStatus() {
|
||||
return request.get(`member/account/type`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取余额变动类型
|
||||
*/
|
||||
export function getAccountType(params: Record<string, any>) {
|
||||
return request.get(`member/account/change_type/${params.account_type}`)
|
||||
}
|
||||
|
||||
|
||||
/***************************************************** 会员提现 ****************************************************/
|
||||
|
||||
/**
|
||||
* 获取提现设置
|
||||
*/
|
||||
export function getCashOutConfig() {
|
||||
return request.get(`member/config/cash_out`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置提现设置
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function setCashOutConfig(params: Record<string, any>) {
|
||||
return request.post(`member/config/cash_out`, params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取会员提现列表
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getCashOutList(params: Record<string, any>) {
|
||||
return request.get(`member/cash_out`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 会员提现详情
|
||||
* @param id
|
||||
*/
|
||||
export function getCashOutDetail(id: number) {
|
||||
return request.get(`member/cash_out/${id}`, {})
|
||||
}
|
||||
|
||||
/**
|
||||
* 会员提现审核
|
||||
* @param params
|
||||
*/
|
||||
export function memberAudit(params: Record<string, any>) {
|
||||
return request.put(`member/cash_out/audit/${params.id}/${params.action}`, params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 会员提现转账
|
||||
* @param params
|
||||
*/
|
||||
export function memberTransfer(params: Record<string, any>) {
|
||||
return request.put(`member/cash_out/transfer/${params.id}`, params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 会员状态变更
|
||||
* @param params
|
||||
*/
|
||||
export function editMemberStatus(params: Record<string, any>) {
|
||||
return request.put(`member/setstatus/${params.status}`, params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 会员提现状态
|
||||
*/
|
||||
export function getCashOutStatusList() {
|
||||
return request.get(`member/cash_out/status`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 提现统计
|
||||
* @returns
|
||||
*/
|
||||
export function getCashOutStat() {
|
||||
return request.get(`member/cash_out/stat`)
|
||||
}
|
||||
|
||||
50
admin/src/app/api/module.ts
Normal file
@ -0,0 +1,50 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
/**
|
||||
* 获取授权信息
|
||||
*/
|
||||
export function getAuthinfo() {
|
||||
return request.get('niucloud/authinfo', { showErrorMessage: false })
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置 授权配置
|
||||
*/
|
||||
export function setAuthinfo(params: Record<string, any>) {
|
||||
return request.post('niucloud/authinfo', params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取 授权配置
|
||||
*/
|
||||
export function getAdminAuthinfo() {
|
||||
return request.get('niucloud/admin/authinfo')
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 获取授权插件列表
|
||||
* @returns
|
||||
*/
|
||||
export function getModule() {
|
||||
return request.get('niucloud/module')
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取插件版本
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getModuleVersion() {
|
||||
return request.get(`niucloud/module`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 下载版本
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function downloadVersion(params: Record<string, any>) {
|
||||
return request.post(`addon/download/${params.addon}`, params, { showSuccessMessage: true })
|
||||
}
|
||||
81
admin/src/app/api/notice.ts
Normal file
@ -0,0 +1,81 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
/***************************************************** 消息管理 ****************************************************/
|
||||
|
||||
/**
|
||||
* 消息列表
|
||||
* @returns
|
||||
*/
|
||||
export function getNoticeList() {
|
||||
return request.get('notice/notice')
|
||||
}
|
||||
|
||||
/**
|
||||
* 消息详情
|
||||
* @param key
|
||||
* @returns
|
||||
*/
|
||||
export function getNoticeInfo(key: string) {
|
||||
return request.get(`notice/notice/${key}`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 消息发送记录
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getNoticeLog(params: any) {
|
||||
return request.get(`notice/log`, {params})
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 消息启动与关闭
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function editNoticeStatus(params: Record<string, any>) {
|
||||
return request.post(`notice/notice/editstatus`, params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 消息修改
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function editNotice(params: Record<string, any>) {
|
||||
return request.post(`notice/notice/edit`, params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 短信配置列表
|
||||
* @returns
|
||||
*/
|
||||
export function getSmsList() {
|
||||
return request.get('notice/notice/sms')
|
||||
}
|
||||
|
||||
/**
|
||||
* 短信配置详情
|
||||
* @param sms_type
|
||||
* @returns
|
||||
*/
|
||||
export function getSmsInfo(sms_type: string) {
|
||||
return request.get(`notice/notice/sms/${sms_type}`,)
|
||||
}
|
||||
|
||||
/**
|
||||
* 短信配置修改
|
||||
* @param params
|
||||
*/
|
||||
export function editSms(params: Record<string, any>) {
|
||||
return request.put(`notice/notice/sms/${params.sms_type}`, params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 短信发送记录
|
||||
* @param params
|
||||
*/
|
||||
export function getSmsLog(params: Record<string, any>) {
|
||||
return request.get(`notice/sms/log`, params)
|
||||
}
|
||||
70
admin/src/app/api/order.ts
Normal file
@ -0,0 +1,70 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
/***************************************************** 充值订单 ****************************************************/
|
||||
|
||||
/**
|
||||
* 获取充值订单列表
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getRechargeOrderList(params: Record<string, any>) {
|
||||
return request.get(`order/recharge`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取充值订单统计
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getRechargeStat(params: Record<string, any>) {
|
||||
return request.get(`order/recharge/stat`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取充值订单详情
|
||||
* @param order_id
|
||||
* @returns
|
||||
*/
|
||||
export function getRechargeOrderInfo(order_id: number) {
|
||||
return request.get(`order/recharge/${order_id}`);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取充值订单状态列表
|
||||
* @returns
|
||||
*/
|
||||
export function getRechargeOrderStatusList() {
|
||||
return request.get(`order/recharge/status`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取退款记录
|
||||
* @returns
|
||||
*/
|
||||
export function getRechargeRefund(params: Record<string, any>) {
|
||||
return request.get(`order/recharge/refund`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取退款状态
|
||||
* @returns
|
||||
*/
|
||||
export function getRechargeRefundStatus() {
|
||||
return request.get(`order/recharge/refund/status`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 充值订单发起退款
|
||||
* @returns
|
||||
*/
|
||||
export function rechargeRefund(id: number) {
|
||||
return request.put(`order/recharge/refund/${id}`, {}, {showSuccessMessage: true});
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取退款统计
|
||||
* @returns
|
||||
*/
|
||||
export function getRechargeRefundStat() {
|
||||
return request.get(`order/recharge/refund/stat`);
|
||||
}
|
||||
71
admin/src/app/api/pay.ts
Normal file
@ -0,0 +1,71 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
/***************************************************** 账单列表 **************************************************/
|
||||
|
||||
/**
|
||||
* 获取账单列表
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getAccountList(params: Record<string, any>) {
|
||||
return request.get(`pay/account`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取账单详情
|
||||
* @param id
|
||||
*/
|
||||
export function getAccountInfo(id: number) {
|
||||
return request.get(`pay/account/${id}`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取账单统计
|
||||
* @returns
|
||||
*/
|
||||
export function getAccountStat() {
|
||||
return request.get(`pay/account/stat`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取账单类型
|
||||
* @returns
|
||||
*/
|
||||
export function getAccountType() {
|
||||
return request.get(`pay/account/type`)
|
||||
}
|
||||
|
||||
/***************************************************** 退款信息 **************************************************/
|
||||
|
||||
/**
|
||||
* 退款列表
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getPayRefundPages(params: Record<string, any>) {
|
||||
return request.get(`pay/refund`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取退款详情
|
||||
* @param id
|
||||
*/
|
||||
export function getPayRefundInfo(refund_no: string) {
|
||||
return request.get(`pay/refund/${refund_no}`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 退款方式
|
||||
* @param id
|
||||
*/
|
||||
export function getRefundType() {
|
||||
return request.get(`pay/refund/type`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 退款转账
|
||||
* @param id
|
||||
*/
|
||||
export function getRefundTransfer(params: Record<string, any>) {
|
||||
return request.post(`pay/refund/transfer`, params, {showSuccessMessage: true})
|
||||
}
|
||||
18
admin/src/app/api/personal.ts
Normal file
@ -0,0 +1,18 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
/**
|
||||
* 获取支付设置
|
||||
* @returns
|
||||
*/
|
||||
export function getUserInfo(type: string) {
|
||||
return request.get(`auth/get`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 配置支付
|
||||
* @returns
|
||||
*/
|
||||
export function setUserInfo(params: Record<string, any>) {
|
||||
return request.put(`auth/edit`, params, {showSuccessMessage: true});
|
||||
}
|
||||
|
||||
244
admin/src/app/api/site.ts
Normal file
@ -0,0 +1,244 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
//包含站点管理,站点用户管理,站点操作日志
|
||||
|
||||
/***************************************************** 站点管理 ****************************************************/
|
||||
|
||||
/**
|
||||
* 获取站点列表
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getSiteList(params: Record<string, any>) {
|
||||
return request.get(`site/site`, { params })
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取站点详情
|
||||
* @param site_id
|
||||
*/
|
||||
export function getSiteInfo(site_id: number) {
|
||||
return request.get(`site/site/${site_id}`);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加站点
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function addSite(params: Record<string, any>) {
|
||||
return request.post('site/site', params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新站点
|
||||
* @param params
|
||||
*/
|
||||
export function editSite(params: Record<string, any>) {
|
||||
return request.put(`site/site/${params.site_id}`, params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 关闭站点
|
||||
* @param params
|
||||
*/
|
||||
export function closeSite(params: Record<string, any>) {
|
||||
return request.put(`site/closesite/${params.site_id}`, params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 打开站点
|
||||
* @param params
|
||||
*/
|
||||
export function openSite(params: Record<string, any>) {
|
||||
return request.put(`site/opensite/${params.site_id}`, params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取全部站点状态
|
||||
*/
|
||||
export function getStatusList() {
|
||||
return request.get(`site/statuslist`)
|
||||
}
|
||||
|
||||
|
||||
/***************************************************** 站点分组管理 ****************************************************/
|
||||
|
||||
/**
|
||||
* 获取站点分组列表
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getSiteGroupList(params: Record<string, any>) {
|
||||
return request.get(`site/group`, { params })
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取站点分组详情
|
||||
* @param site_id
|
||||
*/
|
||||
export function getSiteGroupInfo(groupId: number) {
|
||||
return request.get(`site/group/${groupId}`);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加站点分组
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function addSiteGroup(params: Record<string, any>) {
|
||||
return request.post('site/group', params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新站点分组
|
||||
* @param params
|
||||
*/
|
||||
export function editSiteGroup(params: Record<string, any>) {
|
||||
return request.put(`site/group/${params.group_id}`, params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除站点分组
|
||||
* @param group_id
|
||||
*/
|
||||
export function deleteSiteGroup(group_id: number) {
|
||||
return request.delete(`site/group/${group_id}`, { showSuccessMessage: true });
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取全部站点分组
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getSiteGroupAll(params: Record<string, any>) {
|
||||
return request.get(`site/group/all`, params)
|
||||
}
|
||||
|
||||
/***************************************************** 当前站点用户 *************************************************/
|
||||
|
||||
/**
|
||||
* 获取站点用户列表
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getUserList(params: Record<string, any>) {
|
||||
return request.get(`site/user`, { params })
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取站点用户详情
|
||||
* @param uid
|
||||
*/
|
||||
export function getUserInfo(uid: number) {
|
||||
return request.get(`site/user/${uid}`);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加用户
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function addUser(params: Record<string, any>) {
|
||||
return request.post('site/user', params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑用户
|
||||
* @param params
|
||||
*/
|
||||
export function editUser(params: Record<string, any>) {
|
||||
return request.put(`site/user/${params.uid}`, params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除用户
|
||||
* @param uid
|
||||
* @returns
|
||||
*/
|
||||
export function deleteUser(uid: number) {
|
||||
return request.delete(`site/user/${uid}`, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 锁定用户
|
||||
* @param uid
|
||||
* @returns
|
||||
*/
|
||||
export function lockUser(uid: number) {
|
||||
return request.put(`site/user/lock/${uid}`)
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 解锁用户
|
||||
* @param uid
|
||||
* @returns
|
||||
*/
|
||||
export function unlockUser(uid: number) {
|
||||
return request.put(`site/user/unlock/${uid}`)
|
||||
}
|
||||
|
||||
|
||||
/***************************************************** 操作日志 **************************************************/
|
||||
|
||||
/**
|
||||
* 获取操作日志列表
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getLogList(params: Record<string, any>) {
|
||||
return request.get(`site/log`, { params })
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取操作日志详情
|
||||
* @param id
|
||||
*/
|
||||
export function getLogInfo(id: number) {
|
||||
return request.get(`site/log/${id}`)
|
||||
}
|
||||
|
||||
/***************************************************** 账单列表 **************************************************/
|
||||
|
||||
/**
|
||||
* 获取账单列表
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getAccountList(params: Record<string, any>) {
|
||||
return request.get(`site/account`, { params })
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取账单详情
|
||||
* @param id
|
||||
*/
|
||||
export function getAccountInfo(id: number) {
|
||||
return request.get(`site/account/${id}`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取账单统计
|
||||
* @returns
|
||||
*/
|
||||
export function getAccountStat() {
|
||||
return request.get(`site/account/stat`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取账单类型
|
||||
* @returns
|
||||
*/
|
||||
export function getAccountType() {
|
||||
return request.get(`site/account/type`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取站点应用
|
||||
* @returns
|
||||
*/
|
||||
export function getSiteAddons() {
|
||||
return request.get('site/addons')
|
||||
}
|
||||
17
admin/src/app/api/stat.ts
Normal file
@ -0,0 +1,17 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
/***************************************************** 统计信息 **************************************************/
|
||||
/**
|
||||
* 获取统计信息
|
||||
*/
|
||||
export function getStatInfo() {
|
||||
return request.get(`stat/index`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取站点统计信息
|
||||
*/
|
||||
export function getSiteStatInfo() {
|
||||
return request.get(`stat/siteindex`)
|
||||
}
|
||||
|
||||
668
admin/src/app/api/sys.ts
Normal file
@ -0,0 +1,668 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
/***************************************************** 系统整体信息 *************************************************/
|
||||
|
||||
/**
|
||||
* 系统信息
|
||||
* @returns
|
||||
*/
|
||||
export function getInfo() {
|
||||
return request.get('sys/role')
|
||||
}
|
||||
|
||||
/**
|
||||
* 系统信息
|
||||
* @returns
|
||||
*/
|
||||
export function getUrl() {
|
||||
return request.get('sys/url')
|
||||
}
|
||||
|
||||
/***************************************************** 用户组 ****************************************************/
|
||||
|
||||
/**
|
||||
* 用户组列表
|
||||
* @returns
|
||||
*/
|
||||
export function getRoleList(params: Record<string, any>) {
|
||||
return request.get('sys/role', { params })
|
||||
}
|
||||
|
||||
/**
|
||||
* 用户组详情
|
||||
* @param roleId
|
||||
*/
|
||||
export function getRoleInfo(roleId: number) {
|
||||
return request.get(`sys/role/${roleId}`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加用户组
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function addRole(params: Record<string, any>) {
|
||||
return request.post(`sys/role`, params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑用户组
|
||||
* @param params
|
||||
*/
|
||||
export function editRole(params: Record<string, any>) {
|
||||
return request.put(`sys/role/${params.role_id}`, params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除用户组
|
||||
* @param roleId
|
||||
*/
|
||||
export function deleteRole(roleId: number) {
|
||||
return request.delete(`sys/role/${roleId}`, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 全部分组
|
||||
* @returns
|
||||
*/
|
||||
export function allRole() {
|
||||
return request.get('sys/role/all')
|
||||
}
|
||||
|
||||
/***************************************************** 全部菜单 ****************************************************/
|
||||
|
||||
/**
|
||||
* 获取全部菜单
|
||||
* @returns
|
||||
*/
|
||||
export function getMenus(type: string) {
|
||||
return request.get(`sys/menu/${type}`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取菜单信息
|
||||
* @param menu_key
|
||||
*/
|
||||
export function getMenuInfo(app_type: string, menu_key: string) {
|
||||
return request.get(`sys/menu/${app_type}/info/${menu_key}`);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加菜单
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function addMenu(params: Record<string, any>) {
|
||||
return request.post('sys/menu', params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新菜单
|
||||
* @param params
|
||||
*/
|
||||
export function editMenu(params: Record<string, any>) {
|
||||
return request.put(`sys/menu/${params.app_type}/${params.menu_key}`, params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除菜单
|
||||
* @param menu_key
|
||||
*/
|
||||
export function deleteMenu(app_type: string, menu_key: string) {
|
||||
return request.delete(`sys/menu/${app_type}/${menu_key}`, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取系统菜单
|
||||
*
|
||||
*/
|
||||
export function getSystemMenu() {
|
||||
return request.get(`sys/menu/system_menu`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取应用菜单
|
||||
*
|
||||
*/
|
||||
export function getAddonMenu(key: any) {
|
||||
return request.get(`sys/menu/addon_menu/${key}`)
|
||||
}
|
||||
|
||||
/***************************************************** 站点菜单 ****************************************************/
|
||||
|
||||
/**
|
||||
* 获取站点菜单
|
||||
* @returns
|
||||
*/
|
||||
export function getSiteMenus() {
|
||||
return request.get(`site/site/menu`)
|
||||
}
|
||||
|
||||
|
||||
/***************************************************** 设置 ****************************************************/
|
||||
|
||||
/**
|
||||
* 获取网站设置
|
||||
* @returns
|
||||
*/
|
||||
export function getWebsite() {
|
||||
return request.get('sys/config/website')
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取网站设置
|
||||
* @returns
|
||||
*/
|
||||
export function getWebConfig() {
|
||||
return request.get('sys/web/website')
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新网站设置
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function setWebsite(params: Record<string, any>) {
|
||||
return request.put(`sys/config/website`, params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取版权设置
|
||||
* @returns
|
||||
*/
|
||||
export function getCopyright() {
|
||||
return request.get('sys/config/copyright')
|
||||
}
|
||||
|
||||
/**
|
||||
* 获服务信息
|
||||
* @returns
|
||||
*/
|
||||
export function getService() {
|
||||
return request.get('sys/config/service')
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新版权设置
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function setCopyright(params: Record<string, any>) {
|
||||
return request.put(`sys/config/copyright`, params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取附件组列表
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getAttachmentCategoryList(params: Record<string, any>) {
|
||||
return request.get(`sys/attachment/category`, { params })
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加分类
|
||||
* @param params
|
||||
*/
|
||||
export function addAttachmentCategory(params: Record<string, any>) {
|
||||
return request.post(`sys/attachment/category`, params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑分类
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function editAttachmentCategory(params: Record<string, any>) {
|
||||
return request.put(`sys/attachment/category/${params.id}`, params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除分类
|
||||
* @param id
|
||||
* @returns
|
||||
*/
|
||||
export function deleteAttachmentCategory(id: number) {
|
||||
return request.delete(`sys/attachment/category/${id}`, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取附件列表
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getAttachmentList(params: Record<string, any>) {
|
||||
return request.get(`sys/attachment`, { params })
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除附件
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function deleteAttachment(params: Record<string, any>) {
|
||||
return request.delete(`sys/attachment/del`, { data: params, showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 移动附件
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function moveAttachment(params: Record<string, any>) {
|
||||
return request.put(`sys/attachment/batchmove`, params)
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取menu菜单
|
||||
*/
|
||||
export function getAuthMenu() {
|
||||
return request.get(`auth/site/showmenu`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取快捷菜单
|
||||
*/
|
||||
export function getShortcutMenu() {
|
||||
return request.get(`sys/config/shortcut_menu`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加快捷菜单
|
||||
*/
|
||||
export function setShortcutMenu(params: Record<string, any>) {
|
||||
return request.put(`sys/config/shortcut_menu`, params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取图标库分类列表
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getIconCategoryList(params: Record<string, any>) {
|
||||
return request.get(`sys/attachment/icon_category`, { params })
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取图标库列表
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getIconList(params: Record<string, any>) {
|
||||
return request.get(`sys/attachment/icon`, { params })
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取evn
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getEnv() {
|
||||
return request.get(`sys/env`)
|
||||
}
|
||||
/***************************************************** 地址管理 ****************************************************/
|
||||
|
||||
/**
|
||||
* 获取下级地址列表
|
||||
* @param pid
|
||||
*/
|
||||
export function getAreaListByPid(pid: number = 0) {
|
||||
return request.get(`sys/area/list_by_pid/${pid}`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取地址树列表
|
||||
* @param level
|
||||
*/
|
||||
export function getAreatree(level: number = 1) {
|
||||
return request.get(`sys/area/tree/${level}`)
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 获取地址信息
|
||||
*/
|
||||
export function getAddressInfo(params: any) {
|
||||
return request.get(`sys/area/get_info`, { params })
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取地址信息
|
||||
*/
|
||||
export function getContraryAddress(params: any) {
|
||||
return request.get(`sys/area/contrary`, { params })
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取地址
|
||||
* @param code
|
||||
*/
|
||||
export function getAreaByCode(code: number | string) {
|
||||
return request.get(`sys/area/code/${code}`)
|
||||
}
|
||||
/***************************************************** 存储设置 ****************************************************/
|
||||
|
||||
/**
|
||||
* 获取存储配置列表
|
||||
*/
|
||||
export function getStorageList() {
|
||||
return request.get(`sys/storage`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取存储详情
|
||||
* @param type
|
||||
*/
|
||||
export function getStorageInfo(type: string) {
|
||||
return request.get(`sys/storage/${type}`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改存储
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function editStorage(params: Record<string, any>) {
|
||||
return request.put(`sys/storage/${params.storage_type}`, params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/***************************************************** 支付设置 ****************************************************/
|
||||
|
||||
/**
|
||||
* 获取支付设置
|
||||
* @returns
|
||||
*/
|
||||
export function getPayConfig(type: string) {
|
||||
return request.get(`pay/config/${type}`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 配置支付
|
||||
* @returns
|
||||
*/
|
||||
export function setPayConfig(params: Record<string, any>) {
|
||||
return request.put(`pay/config/${params.type}`, params, { showSuccessMessage: true });
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取支付列表
|
||||
* @returns
|
||||
*/
|
||||
export function getPayList() {
|
||||
return request.get(`pay/lists`)
|
||||
}
|
||||
|
||||
/***************************************************** 打款设置 ****************************************************/
|
||||
/**
|
||||
* 获取打款设置配置
|
||||
* @param channel
|
||||
*/
|
||||
export function getTransferInfo(channel) {
|
||||
return request.get(`pay/channel/lists/${channel}`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置打款配置
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function setTransferInfo(params: Record<string, any>) {
|
||||
return request.post(`pay/channel/set/transfer`, params)
|
||||
}
|
||||
|
||||
/***************************************************** 定时任务 ****************************************************/
|
||||
|
||||
/**
|
||||
* 获取任务列表
|
||||
* @returns
|
||||
*/
|
||||
export function getCronList(params: any) {
|
||||
return request.get(`sys/schedule/list`, { params })
|
||||
}
|
||||
|
||||
/**
|
||||
* 任务详情
|
||||
* @returns
|
||||
*/
|
||||
export function getCronInfo(id: string) {
|
||||
return request.get(`sys/cron/${id}`);
|
||||
}
|
||||
|
||||
/**
|
||||
* 任务模版
|
||||
* @returns
|
||||
*/
|
||||
export function getCronTemplate() {
|
||||
return request.get(`sys/schedule/template`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 任务间隔
|
||||
* @returns
|
||||
*/
|
||||
export function getCronDateType() {
|
||||
return request.get(`sys/schedule/datetype`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取星期
|
||||
* @returns
|
||||
*/
|
||||
export function getWeek() {
|
||||
return request.get(`sys/date/week`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加计划任务
|
||||
* @returns
|
||||
*/
|
||||
export function addCron(params: Record<string, any>) {
|
||||
return request.post(`sys/schedule`, params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑任务
|
||||
* @returns
|
||||
*/
|
||||
export function editCron(params: Record<string, any>) {
|
||||
return request.put(`sys/schedule/${params.id}`, params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除任务
|
||||
* @returns
|
||||
*/
|
||||
export function deleteCron(id: string) {
|
||||
return request.delete(`sys/schedule/${id}`, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/***************************************************** 协议管理 ****************************************************/
|
||||
|
||||
/**
|
||||
* 获取协议列表
|
||||
* @returns
|
||||
*/
|
||||
export function getAgreementList() {
|
||||
return request.get(`sys/agreement`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 协议详情
|
||||
* @returns
|
||||
*/
|
||||
export function getAgreementInfo(key: string) {
|
||||
return request.get(`sys/agreement/${key}`);
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新协议
|
||||
* @returns
|
||||
*/
|
||||
export function editAgreement(params: Record<string, any>) {
|
||||
return request.put(`sys/agreement/${params.key}`, params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 协议详情
|
||||
* @returns
|
||||
*/
|
||||
export function getChannelType() {
|
||||
return request.get(`sys/channel`);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 获取渠道域名
|
||||
* @returns
|
||||
*/
|
||||
export function getSceneDomain() {
|
||||
return request.get(`sys/scene_domain`);
|
||||
}
|
||||
|
||||
/***************************************************** 登录注册配置 ****************************************************/
|
||||
|
||||
/**
|
||||
* 管理端登录注册配置
|
||||
*/
|
||||
export function getConfigLogin() {
|
||||
return request.get(`sys/config/login`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置管理端登录注册配置
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function setConfigLogin(params: Record<string, any>) {
|
||||
return request.put(`sys/config/login`, params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取支付设置
|
||||
*/
|
||||
export function getPayConfigList() {
|
||||
return request.get(`pay/channel/lists`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置支付配置
|
||||
*/
|
||||
export function setPatConfig(params: Record<string, any>) {
|
||||
return request.post(`pay/channel/set/all`, params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
|
||||
/***************************************************** 刷新菜单 ****************************************************/
|
||||
/**
|
||||
* 刷新菜单
|
||||
*/
|
||||
export function menuRefresh(params: Record<string, any>) {
|
||||
return request.post(`sys/menu/refresh`, {}, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 清理数据字段缓存
|
||||
*/
|
||||
export function clearSchemaCache(params: Record<string, any>) {
|
||||
return request.post(`sys/schema/clear`, {}, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
|
||||
/***************************************************** 获取应用 ****************************************************/
|
||||
/**
|
||||
* 获取应用
|
||||
*/
|
||||
export function getAppMange() {
|
||||
return request.get(`sys/applist`)
|
||||
}
|
||||
|
||||
/***************************************************** 地图设置 ****************************************************/
|
||||
|
||||
/**
|
||||
* 设置地图key
|
||||
*/
|
||||
export function setMap(params: Record<string, any>) {
|
||||
return request.put(`sys/config/map`, params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取地图配置
|
||||
*/
|
||||
export function getMap() {
|
||||
return request.get(`sys/config/map`)
|
||||
}
|
||||
|
||||
/***************************************************** 首页 ****************************************************/
|
||||
/**
|
||||
* 获取首页列表
|
||||
*/
|
||||
export function getIndexList() {
|
||||
return request.get(`sys/config/site_index`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置首页模版
|
||||
*/
|
||||
export function setIndexList(params: Record<string, any>) {
|
||||
return request.put(`sys/config/site_index`, params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取布局
|
||||
* @returns
|
||||
*/
|
||||
export function getLayouts() {
|
||||
return request.get('sys/layout')
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置布局
|
||||
* @returns
|
||||
*/
|
||||
export function setLayout(key: string) {
|
||||
return request.put('sys/layout', { key }, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取支付待审核记录
|
||||
*/
|
||||
export function getPayAuditList(params: Record<string, any>) {
|
||||
return request.get('pay/audit', { params })
|
||||
}
|
||||
|
||||
/**
|
||||
* 支付审核通过
|
||||
* @returns
|
||||
*/
|
||||
export function payAuditPass(outTradeNo: string) {
|
||||
return request.put(`pay/pass/${outTradeNo}`, {}, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 支付审核拒绝
|
||||
* @returns
|
||||
*/
|
||||
export function payAuditRefuse(params: Record<string, any>) {
|
||||
return request.put(`pay/refuse/${params.out_trade_no}`, params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取支付单据详情
|
||||
*/
|
||||
export function getPayDetail(id: number) {
|
||||
return request.get(`pay/detail/${id}`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取应用列表
|
||||
*/
|
||||
export function getAddonList() {
|
||||
return request.get(`app/getAddonList`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取手机端首页列表
|
||||
*/
|
||||
export function getWapIndexList(params: Record<string, any>) {
|
||||
return request.get('sys/config/wap_index', { params })
|
||||
}
|
||||
177
admin/src/app/api/tools.ts
Normal file
@ -0,0 +1,177 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
/***************************************************** 插件开发 ****************************************************/
|
||||
/**
|
||||
* 获取插件列表
|
||||
* @returns
|
||||
*/
|
||||
export function getAddonDevelop(params: Record<string, any>) {
|
||||
return request.get(`addon_develop`, {params});
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取插件类型配置
|
||||
* @returns
|
||||
*/
|
||||
export function getAddontype() {
|
||||
return request.get(`addontype`);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取插件详情
|
||||
* @returns
|
||||
*/
|
||||
export function getAddonDevelopInfo(key: any) {
|
||||
return request.get(`addon_develop/${key}`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取插件key是否存在
|
||||
* @returns
|
||||
*/
|
||||
export function getAddonDevelopCheck(key: any) {
|
||||
return request.get(`addon_develop/check/${key}`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加插件
|
||||
* @param key
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function addAddonDevelop(key: any, params: Record<string, any>) {
|
||||
return request.post(`addon_develop/${key}`, params)
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑插件
|
||||
* @param key
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function editAddonDevelop(key: any, params: Record<string, any>) {
|
||||
return request.put(`addon_develop/${key}`, params)
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除插件
|
||||
* @param key
|
||||
* @returns
|
||||
*/
|
||||
export function deleteAddonDevelop(key: any) {
|
||||
return request.delete(`addon_develop/${key}`, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 打包插件
|
||||
* @returns
|
||||
*/
|
||||
export function addonDevelopBuild(key: any) {
|
||||
return request.post(`addon_develop/build/${key}`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 下载插件
|
||||
* @returns
|
||||
*/
|
||||
export function addonDevelopDownload(key: any) {
|
||||
return request.post(`addon_develop/download/${key}`, {}, {"responseType": "blob"})
|
||||
}
|
||||
/***************************************************** 代码生成 ****************************************************/
|
||||
|
||||
/**
|
||||
* 获取代码生成列表
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getGenerateTableList(params: Record<string, any>) {
|
||||
return request.get(`generator/generator`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取代码生成详情
|
||||
* @param id 代码生成id
|
||||
* @returns
|
||||
*/
|
||||
export function getGenerateTableInfo(id: number) {
|
||||
return request.get(`generator/generator/${id}`);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加代码生成
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function addGenerateTable(params: Record<string, any>) {
|
||||
return request.post('generator/generator', params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑代码生成
|
||||
* @param params
|
||||
*/
|
||||
export function editGenerateTable(params: Record<string, any>) {
|
||||
return request.put(`generator/generator/${params.id}`, params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除代码生成
|
||||
* @param id
|
||||
* @returns
|
||||
*/
|
||||
export function deleteGenerateTable(id: number) {
|
||||
return request.delete(`generator/generator/${id}`, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 代码生成
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function generateCreate(params: Record<string, any>) {
|
||||
return request.post(`generator/download`, params)
|
||||
}
|
||||
|
||||
/**
|
||||
* 代码生成预览
|
||||
* @param id
|
||||
* @returns
|
||||
*/
|
||||
export function generatePreview(id: number) {
|
||||
return request.get(`generator/preview/${id}`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 数据表
|
||||
*/
|
||||
export function generateTable() {
|
||||
return request.get(`generator/table`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取服务器环境配置
|
||||
*/
|
||||
export function getSystem() {
|
||||
return request.get(`sys/system`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取全部模型
|
||||
*/
|
||||
export function getGeneratorAllModel(params: any) {
|
||||
return request.get(`generator/all_model`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取 表字段
|
||||
*/
|
||||
export function getGeneratorTableColumn(params: any) {
|
||||
return request.get(`generator/table_column`, {params})
|
||||
}
|
||||
|
||||
/**
|
||||
* 同步校验
|
||||
*/
|
||||
export function generatorCheckFile(params: Record<string, any>) {
|
||||
return request.get(`generator/check_file`, {params})
|
||||
}
|
||||
58
admin/src/app/api/user.ts
Normal file
@ -0,0 +1,58 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
//当前接口用户指系统整体用户管理,站内用户添加,编辑,详情,操作日志,请查看站点内部相关接口
|
||||
|
||||
/***************************************************** 用户 ****************************************************/
|
||||
|
||||
/**
|
||||
* 获取用户列表
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getUserList(params: Record<string, any>) {
|
||||
return request.get(`user/user`, { params })
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取用户详情
|
||||
* @param uid 用户uid
|
||||
* @returns
|
||||
*/
|
||||
export function getUserInfo(uid: number) {
|
||||
return request.get(`user/user/${uid}`);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加用户
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function addUser(params: Record<string, any>) {
|
||||
return request.post('user/user', params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新用户
|
||||
* @param params
|
||||
*/
|
||||
export function editUser(params: Record<string, any>) {
|
||||
return request.put(`user/user/${params.uid}`, params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取所有用户列表
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getAllUserList(params: Record<string, any>) {
|
||||
return request.get(`user/user_all`, { params })
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询用户名是否存在
|
||||
* @param username
|
||||
* @returns
|
||||
*/
|
||||
export function checkUsernameIsExist(username: string) {
|
||||
return request.get(`user/isexist`, { params: { username } })
|
||||
}
|
||||
125
admin/src/app/api/weapp.ts
Normal file
@ -0,0 +1,125 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
/**
|
||||
* 获取微信小程序配置
|
||||
* @returns
|
||||
*/
|
||||
export function getWeappConfig() {
|
||||
return request.get('weapp/config')
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑微信小程序配置
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function setWeappConfig(params: Record<string, any>) {
|
||||
return request.put('weapp/config', params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取订阅消息列表
|
||||
* @returns
|
||||
*/
|
||||
export function getTemplateList() {
|
||||
return request.get('weapp/template')
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取同步
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getBatchAcquisition(params: Record<string, any>) {
|
||||
return request.put('weapp/template/sync', params, { showSuccessMessage: true })
|
||||
}
|
||||
/**
|
||||
* 添加微信小程序版本
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function setWeappVersion(params: Record<string, any>) {
|
||||
return request.post('weapp/version', params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 微信小程序预览码
|
||||
* @returns
|
||||
*/
|
||||
export function getWeappPreview() {
|
||||
return request.get('weapp/preview')
|
||||
}
|
||||
|
||||
/**
|
||||
* 微信小程序版本列表
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getWeappVersionList(params: Record<string, any>) {
|
||||
return request.get('weapp/version', { params })
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取微信小程序上传日志
|
||||
* @param key
|
||||
* @returns
|
||||
*/
|
||||
export function getWeappUploadLog(key: string) {
|
||||
return request.get(`weapp/upload/${key}`)
|
||||
}
|
||||
|
||||
/***************************************************** 管理端 ****************************************************/
|
||||
|
||||
/**
|
||||
* 上传文件
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function uploadVersion(params: Record<string, any>) {
|
||||
return request.put('applet/upload', params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加版本
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function addVersion(params: Record<string, any>) {
|
||||
return request.post('applet/version', params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 版本列表
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getVersionList(params: Record<string, any>) {
|
||||
return request.get('applet/version', { params })
|
||||
}
|
||||
|
||||
/**
|
||||
* 版本详情
|
||||
* @param id
|
||||
* @returns
|
||||
*/
|
||||
export function getVersionInfo(id: string) {
|
||||
return request.get(`applet/version/${id}`)
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑版本
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function editVersion(params: Record<string, any>) {
|
||||
return request.put(`applet/version/${params.id}`, params, { showSuccessMessage: true })
|
||||
}
|
||||
|
||||
/**
|
||||
* 版本删除
|
||||
* @param id
|
||||
* @returns
|
||||
*/
|
||||
export function deleteVersion(id: string) {
|
||||
return request.delete(`applet/version/${id}`)
|
||||
}
|
||||
64
admin/src/app/api/wechat.ts
Normal file
@ -0,0 +1,64 @@
|
||||
import request from '@/utils/request'
|
||||
|
||||
/**
|
||||
* 获取微信配置
|
||||
* @returns
|
||||
*/
|
||||
export function getWechatConfig() {
|
||||
return request.get('wechat/config')
|
||||
}
|
||||
|
||||
/**
|
||||
* 微信配置所需的静态信息
|
||||
*/
|
||||
export function getWechatStatic() {
|
||||
return request.get('wechat/static');
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑微信配置
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function editWechatConfig(params: Record<string, any>) {
|
||||
return request.put('wechat/config', params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取微信菜单
|
||||
* @returns
|
||||
*/
|
||||
export function getWechatMenu() {
|
||||
return request.get('wechat/menu')
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑微信菜单
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function editWechatMenu(params: Record<string, any>) {
|
||||
return request.put('wechat/menu', params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取消息模板列表
|
||||
* @returns
|
||||
*/
|
||||
export function getTemplateList() {
|
||||
return request.get('wechat/template')
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 获取同步
|
||||
* @param params
|
||||
* @returns
|
||||
*/
|
||||
export function getBatchAcquisition(params: Record<string, any>) {
|
||||
return request.put('wechat/template/sync', params, {showSuccessMessage: true})
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
BIN
admin/src/app/assets/images/SaaS.png
Normal file
|
After Width: | Height: | Size: 363 B |
BIN
admin/src/app/assets/images/app_default.png
Normal file
|
After Width: | Height: | Size: 54 KiB |
BIN
admin/src/app/assets/images/app_store/app_store_default.png
Normal file
|
After Width: | Height: | Size: 156 KiB |
BIN
admin/src/app/assets/images/app_store/local_icon.png
Normal file
|
After Width: | Height: | Size: 907 B |
BIN
admin/src/app/assets/images/app_store/local_icon_select.png
Normal file
|
After Width: | Height: | Size: 544 B |
BIN
admin/src/app/assets/images/app_store/market_icon.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
admin/src/app/assets/images/app_store/market_icon_select.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
admin/src/app/assets/images/app_store/switch_icon_1.png
Normal file
|
After Width: | Height: | Size: 455 B |
BIN
admin/src/app/assets/images/app_store/switch_icon_2.png
Normal file
|
After Width: | Height: | Size: 843 B |
BIN
admin/src/app/assets/images/back_login.jpg
Normal file
|
After Width: | Height: | Size: 108 KiB |
BIN
admin/src/app/assets/images/category_default.png
Normal file
|
After Width: | Height: | Size: 1.8 KiB |
BIN
admin/src/app/assets/images/channel/preview.png
Normal file
|
After Width: | Height: | Size: 655 KiB |
BIN
admin/src/app/assets/images/default_headimg.png
Normal file
|
After Width: | Height: | Size: 4.2 KiB |
BIN
admin/src/app/assets/images/diy/notice/style_01.png
Normal file
|
After Width: | Height: | Size: 1.6 KiB |
BIN
admin/src/app/assets/images/diy/text/style1.png
Normal file
|
After Width: | Height: | Size: 3.4 KiB |
BIN
admin/src/app/assets/images/diy/text/style2.png
Normal file
|
After Width: | Height: | Size: 3.3 KiB |
BIN
admin/src/app/assets/images/diy_preview_head.png
Normal file
|
After Width: | Height: | Size: 7.8 KiB |
BIN
admin/src/app/assets/images/empty.png
Normal file
|
After Width: | Height: | Size: 78 KiB |
BIN
admin/src/app/assets/images/error.png
Normal file
|
After Width: | Height: | Size: 88 KiB |
BIN
admin/src/app/assets/images/icon-addon.png
Normal file
|
After Width: | Height: | Size: 673 B |
BIN
admin/src/app/assets/images/icon_folder.png
Normal file
|
After Width: | Height: | Size: 605 B |
BIN
admin/src/app/assets/images/icon_preview.png
Normal file
|
After Width: | Height: | Size: 392 B |
BIN
admin/src/app/assets/images/index/add_menu.png
Normal file
|
After Width: | Height: | Size: 897 B |
BIN
admin/src/app/assets/images/index/administrator.png
Normal file
|
After Width: | Height: | Size: 8.2 KiB |
BIN
admin/src/app/assets/images/index/app.png
Normal file
|
After Width: | Height: | Size: 2.1 KiB |
BIN
admin/src/app/assets/images/index/app1.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
admin/src/app/assets/images/index/app_default.png
Normal file
|
After Width: | Height: | Size: 2.4 KiB |
BIN
admin/src/app/assets/images/index/apply_empty.png
Normal file
|
After Width: | Height: | Size: 8.8 KiB |
BIN
admin/src/app/assets/images/index/article.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
admin/src/app/assets/images/index/article_list.png
Normal file
|
After Width: | Height: | Size: 6.2 KiB |
BIN
admin/src/app/assets/images/index/auth.png
Normal file
|
After Width: | Height: | Size: 2.7 KiB |
BIN
admin/src/app/assets/images/index/auth1.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
BIN
admin/src/app/assets/images/index/balance.png
Normal file
|
After Width: | Height: | Size: 8.0 KiB |
BIN
admin/src/app/assets/images/index/del_model.png
Normal file
|
After Width: | Height: | Size: 773 B |
BIN
admin/src/app/assets/images/index/edit.png
Normal file
|
After Width: | Height: | Size: 550 B |
BIN
admin/src/app/assets/images/index/fitment.png
Normal file
|
After Width: | Height: | Size: 8.0 KiB |
BIN
admin/src/app/assets/images/index/member.png
Normal file
|
After Width: | Height: | Size: 8.3 KiB |
BIN
admin/src/app/assets/images/index/model_tag.png
Normal file
|
After Width: | Height: | Size: 157 B |
BIN
admin/src/app/assets/images/index/new_site.png
Normal file
|
After Width: | Height: | Size: 2.5 KiB |
BIN
admin/src/app/assets/images/index/new_site1.png
Normal file
|
After Width: | Height: | Size: 1.2 KiB |
BIN
admin/src/app/assets/images/index/overview.png
Normal file
|
After Width: | Height: | Size: 1.2 MiB |
BIN
admin/src/app/assets/images/index/renovation.png
Normal file
|
After Width: | Height: | Size: 1.7 KiB |
BIN
admin/src/app/assets/images/index/site.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
admin/src/app/assets/images/index/site1.png
Normal file
|
After Width: | Height: | Size: 588 B |
BIN
admin/src/app/assets/images/index/site_auth.png
Normal file
|
After Width: | Height: | Size: 3.5 KiB |
BIN
admin/src/app/assets/images/index/site_balance.png
Normal file
|
After Width: | Height: | Size: 3.2 KiB |
BIN
admin/src/app/assets/images/index/site_bg.png
Normal file
|
After Width: | Height: | Size: 19 KiB |
BIN
admin/src/app/assets/images/index/site_class.png
Normal file
|
After Width: | Height: | Size: 2.1 KiB |
BIN
admin/src/app/assets/images/index/site_class1.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
admin/src/app/assets/images/index/site_img.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
admin/src/app/assets/images/index/site_member.png
Normal file
|
After Width: | Height: | Size: 3.2 KiB |
BIN
admin/src/app/assets/images/index/wework_qrcode.png
Normal file
|
After Width: | Height: | Size: 44 KiB |
BIN
admin/src/app/assets/images/index/wx_qrcode.jpg
Normal file
|
After Width: | Height: | Size: 8.4 KiB |
BIN
admin/src/app/assets/images/iphone_bg.png
Normal file
|
After Width: | Height: | Size: 47 KiB |
BIN
admin/src/app/assets/images/login/admin_login_img.png
Normal file
|
After Width: | Height: | Size: 113 KiB |
BIN
admin/src/app/assets/images/login/login_index_bg.png
Normal file
|
After Width: | Height: | Size: 1.7 MiB |
BIN
admin/src/app/assets/images/login/login_index_left.png
Normal file
|
After Width: | Height: | Size: 163 KiB |
BIN
admin/src/app/assets/images/login/site_bg.png
Normal file
|
After Width: | Height: | Size: 32 KiB |
BIN
admin/src/app/assets/images/login/site_bg_1.png
Normal file
|
After Width: | Height: | Size: 87 KiB |
BIN
admin/src/app/assets/images/login/site_code.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
admin/src/app/assets/images/login_bg.png
Normal file
|
After Width: | Height: | Size: 127 KiB |
BIN
admin/src/app/assets/images/login_logo.png
Normal file
|
After Width: | Height: | Size: 4.6 KiB |
BIN
admin/src/app/assets/images/member_head.png
Normal file
|
After Width: | Height: | Size: 4.2 KiB |
BIN
admin/src/app/assets/images/no_perms.png
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
admin/src/app/assets/images/one_type.png
Normal file
|
After Width: | Height: | Size: 62 KiB |
BIN
admin/src/app/assets/images/setting/QRcode.png
Normal file
|
After Width: | Height: | Size: 26 KiB |
BIN
admin/src/app/assets/images/setting/alipay1.png
Normal file
|
After Width: | Height: | Size: 27 KiB |