diff --git a/src/api/link/plugin.ts b/src/api/link/plugin.ts new file mode 100644 index 00000000..bdd5c5d9 --- /dev/null +++ b/src/api/link/plugin.ts @@ -0,0 +1,26 @@ +import { post, get, remove, patch } from '@/utils/request' +import { BASE_API_PATH } from '@/utils/variable'; + +export const queryPage = (data: any) => post(`/plugin/driver/_query`, data) + +export const uploadFile = `${BASE_API_PATH}/plugin/driver/upload` + +export const add = (data: any) => post('/plugin/driver', data) + +export const removeFn = (id: string) => remove(`/plugin/driver/${id}`) + +export const detail = (id: string) => get(`/plugin/driver/${id}`) + +/** + * 获取插件支持的产品信息 + * 用于在产品选择接入方式后,选择产品类型。 + * 即将平台中当前产品与插件中指定的产品绑定,然后把插件的物模型保存到产品并且绑定产品ID映射关系 + * @param id + */ +export const getProductsById = (id: string) => get(`/plugin/driver/${id}/products`) + +export const savePluginData = (type: string, pluginId: string, internalId: string, externalId: string ) => patch(`/plugin/mapping/${type}/${pluginId}/${internalId}`, externalId) + +export const getPluginData = (type: string, pluginId: string, internalId: string ) => get(`/plugin/mapping/${type}/${pluginId}/${internalId}`) + +export const getPublic = (id: string, path: string) => get(`/plugin/driver/${id}/${path}`) \ No newline at end of file diff --git a/src/style.less b/src/style.less index 09e99ced..87cb6cb8 100644 --- a/src/style.less +++ b/src/style.less @@ -1,3 +1,7 @@ +@import "./style/variable"; + +@DarkMenuItemColor: #808491 !important; + .ant-form-item-required:before { position: absolute; right: -12px; @@ -16,20 +20,16 @@ } .ant-pro-top-nav-header { - .ant-menu-item { padding: 0 10px !important; &:not(:first-child) { - margin-left: 8px; - } - &:hover { - background-color: transparent; + margin-left: 8px !important; } } + } - .ant-menu-item-selected,& .ant-menu-item-active { - transition: background 0.3s cubic-bezier(0.645, 0.045, 0.355, 1); - } + .dark { + background-color: #3F4960 !important; h1,& .right-content, & .anticon-bell { color: #fff !important; @@ -39,42 +39,111 @@ color: rgba(#fff, 0.55) !important; } - .ant-menu-item-selected { - & .ant-pro-menu-item-title,& .anticon { - color: #fff !important; - } - } - - .ant-menu-item-selected,& .ant-menu-item-active { - transition: background 0.3s cubic-bezier(0.645, 0.045, 0.355, 1); - background: linear-gradient(0deg, rgba(#fff, 0.25) 0%, rgba(#fff, 0) 82%); - &::after { - left: 0; - right: 0; - border-bottom-color: rgba(#fff, .8); - } - } - - &.light { - background: #3F4960; - box-shadow: 0 1px 0px 0px #E9E9E9; - - h1,& .right-content, & .anticon-bell { - color: #fff !important; - } + .ant-menu { + background-color: #3F4960 !important; .ant-menu-item-selected,& .ant-menu-item-active { - transition: background 0.3s cubic-bezier(0.645, 0.045, 0.355, 1); - background: linear-gradient(0deg, rgba(#fff, 0.15) 0%, rgba(#fff, 0) 82%); + transition: background 0.3s cubic-bezier(0.645, 0.045, 0.355, 1) !important; + } + + .ant-menu-item-selected { + span { + color: #fff !important; + } + } + + .ant-menu-item { + span{ + color: rgba(255, 255, 255, 0.55) !important; + } + &:hover { + background-color: transparent !important; + } &::after { left: 0; right: 0; - border-bottom-color: rgba(#fff, .7); + } + } + + .ant-menu-item-selected,& .ant-menu-item-active { + transition: background 0.3s cubic-bezier(0.645, 0.045, 0.355, 1) !important; + background: linear-gradient(0deg, rgba(#fff, 0.25) 0%, rgba(#fff, 0) 82%) !important; + &::after { + border-bottom-color: rgba(#fff, .8); } } } } + .ant-layout-sider-dark { + background: #fff !important; + + .ant-menu-dark { + background: #fff !important; + + span { + color: @DarkMenuItemColor; + } + + .ant-menu-submenu-title { + span { + color: @DarkMenuItemColor; + } + + i { + &::after { + background-color: @DarkMenuItemColor; + } + + &::before { + background-color: @DarkMenuItemColor; + } + } + } + + .ant-menu-sub { + background: transparent; + .ant-menu-item { + span { + color: @DarkMenuItemColor; + } + } + } + + .ant-menu-submenu-selected { + .ant-menu-submenu-title { + span { + color: @primary-color !important; + } + + i { + &::after { + background-color: @primary-color !important; + } + + &::before { + background-color: @primary-color !important; + } + } + } + .ant-menu-item-selected { + span { + color: @primary-color !important; + } + } + } + + .ant-menu-item-selected { + background-color: transparent !important; + span { + color: @primary-color !important; + } + } + } + + + } + .ant-layout-sider { box-shadow: 1px 0 0 0 #E9E9E9 !important; } diff --git a/src/views/system/Basis/index.vue b/src/views/system/Basis/index.vue index 9424caa3..b2cd5929 100644 --- a/src/views/system/Basis/index.vue +++ b/src/views/system/Basis/index.vue @@ -374,10 +374,10 @@ const form = reactive({ form.formValue = { title: configInfo.front?.title, headerTheme: configInfo.front?.headerTheme, - logo: configInfo.front?.logo || '/public/logo.png', - ico: configInfo.front?.ico || '/public/favicon.ico', + logo: configInfo.front?.logo || '/logo.png', + ico: configInfo.front?.ico || '/favicon.ico', backgroud: - configInfo.front?.backgroud || '/public/images/login.png', + configInfo.front?.backgroud || '/images/login.png', apiKey: configInfo.amap?.apiKey, 'base-path': configInfo.paths?.['base-path'], }; diff --git a/vite.config.ts b/vite.config.ts index 88d9fcff..03a65eec 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -92,9 +92,9 @@ export default defineConfig(({ mode}) => { proxy: { [env.VITE_APP_BASE_API]: { - target: 'http://192.168.32.226:8844', + // target: 'http://192.168.32.226:8844', // target: 'http://192.168.32.244:8881', - // target: 'http://120.77.179.54:8844', // 120测试 + target: 'http://120.77.179.54:8844', // 120测试 // target: 'http://192.168.33.46:8844', // 本地开发环境 ws: 'ws://192.168.33.46:8844', changeOrigin: true,