From a052721622d2736abbdab4fd936a45158518940a Mon Sep 17 00:00:00 2001 From: gaoxq <376340421@qq.com> Date: Sat, 7 Mar 2026 19:08:40 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=A7=E5=B1=8F=E9=A1=B9=E7=9B=AE=E5=88=9D?= =?UTF-8?q?=E5=A7=8B=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- screen-vue/src/api/bizModule.js | 12 + screen-vue/src/components/Layout/index.vue | 7 +- screen-vue/src/router/index.js | 66 ++++- screen-vue/src/views/database/screen/form.vue | 147 ++++++++++ .../src/views/database/screen/index.vue | 156 ++++++++++ screen-vue/src/views/database/screen/list.vue | 277 ++++++++++++++++++ screen-vue/src/views/database/screen/role.vue | 246 ++++++++++++++++ screen-vue/src/views/screen/Erp/index.vue | 33 ++- screen-vue/src/views/screen/Home/index.vue | 8 + screen-vue/src/views/screen/Work/index.vue | 32 +- screen-vue/src/views/screen/index.vue | 126 +++++--- .../biz/controller/HomeMenuController.java | 1 - .../biz/controller/HomeModuleController.java | 13 +- .../controller/HomeModuleGroupController.java | 31 ++ .../mybigscreen/biz/domain/HomeModule.java | 18 +- .../biz/domain/HomeModuleGroup.java | 38 +++ .../biz/mapper/HomeModuleGroupMapper.java | 16 + .../biz/mapper/HomeModuleMapper.java | 2 +- .../biz/service/HomeModuleGroupService.java | 16 + .../impl/HomeModuleGroupServiceImpl.java | 20 ++ .../mapper/HomeModuleGroupMapper.xml | 18 ++ .../resources/mapper/HomeModuleMapper.xml | 5 +- 22 files changed, 1203 insertions(+), 85 deletions(-) create mode 100644 screen-vue/src/api/bizModule.js create mode 100644 screen-vue/src/views/database/screen/form.vue create mode 100644 screen-vue/src/views/database/screen/index.vue create mode 100644 screen-vue/src/views/database/screen/list.vue create mode 100644 screen-vue/src/views/database/screen/role.vue create mode 100644 screen-vue/src/views/screen/Home/index.vue create mode 100644 src/main/java/com/mini/mybigscreen/biz/controller/HomeModuleGroupController.java create mode 100644 src/main/java/com/mini/mybigscreen/biz/domain/HomeModuleGroup.java create mode 100644 src/main/java/com/mini/mybigscreen/biz/mapper/HomeModuleGroupMapper.java create mode 100644 src/main/java/com/mini/mybigscreen/biz/service/HomeModuleGroupService.java create mode 100644 src/main/java/com/mini/mybigscreen/biz/service/impl/HomeModuleGroupServiceImpl.java create mode 100644 src/main/resources/mapper/HomeModuleGroupMapper.xml diff --git a/screen-vue/src/api/bizModule.js b/screen-vue/src/api/bizModule.js new file mode 100644 index 0000000..d7a8c43 --- /dev/null +++ b/screen-vue/src/api/bizModule.js @@ -0,0 +1,12 @@ +import request from '@/utils/request' + +/** + * 获取指标信息列表 + */ +export function getHomeModuleList(params) { + return request({ + url: '/biz/homeModule/list', + method: 'get', + params: params + }) +} \ No newline at end of file diff --git a/screen-vue/src/components/Layout/index.vue b/screen-vue/src/components/Layout/index.vue index a891ab2..faf9d10 100644 --- a/screen-vue/src/components/Layout/index.vue +++ b/screen-vue/src/components/Layout/index.vue @@ -325,9 +325,10 @@ const handleFullScreen = () => { } const handleBigScreen = () => { - if (!isMounted.value) return - const baseUrl = window.location.origin + "/#/bigScreen"; - window.open(baseUrl, '_blank'); + const { href } = router.resolve({ + path: "/bigScreen" + }); + window.open(href, '_blank'); } const handleCommand = (cmd) => { diff --git a/screen-vue/src/router/index.js b/screen-vue/src/router/index.js index 4e8b934..fb15d8c 100644 --- a/screen-vue/src/router/index.js +++ b/screen-vue/src/router/index.js @@ -3,10 +3,46 @@ import Login from '@/views/Login.vue' import Page404 from '@/views/error/404.vue' import Layout from '@/components/Layout/index.vue' import Dashboard from '@/views/desktop/index.vue' -import bigScreen from '@/views/screen/index.vue' +import BigScreen from '@/views/screen/index.vue' +import BigScreenWork from '@/views/screen/Work/index.vue' import { useUserStore } from '@/stores/user' import { ElMessage } from 'element-plus' +const bigScreenModules = import.meta.glob('../views/screen/**/{index,list}.vue', { + eager: false, + import: 'default' +}) + +const generateBigScreenRoutes = () => { + const routes = [] + + Object.entries(bigScreenModules).forEach(([filePath, module]) => { + if (filePath === '../views/screen/index.vue') return; + + const routePath = filePath + .replace('../views', '') + .replace('.vue', '') + .toLowerCase(); + + const finalPath = routePath; + const routeName = finalPath + .split('/') + .filter(Boolean) + .map(seg => seg.charAt(0).toUpperCase() + seg.slice(1)) + .join('') + || 'SystemRoleIndex'; + + routes.push({ + path: finalPath, + name: routeName, + component: module, + meta: { requiresAuth: true } + }) + }) + + return routes +} + const modules = import.meta.glob('../views/**/{index,list}.vue', { eager: false, import: 'default' @@ -18,10 +54,10 @@ const generateRoutes = () => { Object.entries(modules).forEach(([filePath, module]) => { const excludePaths = [ 'views/Login.vue', - 'views/desktop/index.vue', - 'views/error/', + 'views/desktop/index.vue', + 'views/error/', 'views/screen/', - ] + ] if (excludePaths.some(path => filePath.includes(path))) { return } @@ -40,7 +76,8 @@ const generateRoutes = () => { routes.push({ path: routePath, name: routeName || 'SystemRoleIndex', - component: module + component: module, + meta: { requiresAuth: true } }) }) @@ -56,9 +93,22 @@ const routes = [ }, { path: '/bigScreen', - name: 'bigScreen', - component: bigScreen, - meta: { requiresAuth: true } + name: 'BigScreen', + component: BigScreen, + meta: { requiresAuth: true }, + children: [ + { + path: '/bigScreenWork', + name: 'BigScreenWork', + component: BigScreenWork + }, + ...generateBigScreenRoutes(), + { + path: '/:pathMatch(.*)*', + name: 'BigScreen404', + component: Page404 + } + ] }, { path: '/', diff --git a/screen-vue/src/views/database/screen/form.vue b/screen-vue/src/views/database/screen/form.vue new file mode 100644 index 0000000..bc9b1b9 --- /dev/null +++ b/screen-vue/src/views/database/screen/form.vue @@ -0,0 +1,147 @@ + + + + + \ No newline at end of file diff --git a/screen-vue/src/views/database/screen/index.vue b/screen-vue/src/views/database/screen/index.vue new file mode 100644 index 0000000..b59c769 --- /dev/null +++ b/screen-vue/src/views/database/screen/index.vue @@ -0,0 +1,156 @@ + + + + + \ No newline at end of file diff --git a/screen-vue/src/views/database/screen/list.vue b/screen-vue/src/views/database/screen/list.vue new file mode 100644 index 0000000..e2cc700 --- /dev/null +++ b/screen-vue/src/views/database/screen/list.vue @@ -0,0 +1,277 @@ + + + + + \ No newline at end of file diff --git a/screen-vue/src/views/database/screen/role.vue b/screen-vue/src/views/database/screen/role.vue new file mode 100644 index 0000000..8dd27bf --- /dev/null +++ b/screen-vue/src/views/database/screen/role.vue @@ -0,0 +1,246 @@ + + + + + \ No newline at end of file diff --git a/screen-vue/src/views/screen/Erp/index.vue b/screen-vue/src/views/screen/Erp/index.vue index 3ea4fae..63ce644 100644 --- a/screen-vue/src/views/screen/Erp/index.vue +++ b/screen-vue/src/views/screen/Erp/index.vue @@ -9,17 +9,17 @@
- +
- +
- +
@@ -29,19 +29,19 @@
- +
- +
- +
@@ -51,19 +51,19 @@
- +
- +
- +
@@ -72,6 +72,7 @@ + + \ No newline at end of file diff --git a/screen-vue/src/views/screen/Work/index.vue b/screen-vue/src/views/screen/Work/index.vue index dcfe833..11ce2e6 100644 --- a/screen-vue/src/views/screen/Work/index.vue +++ b/screen-vue/src/views/screen/Work/index.vue @@ -9,34 +9,34 @@
- +
- +
- +
- +
- +
- +
- +
- +
@@ -45,6 +45,7 @@ @@ -325,6 +377,14 @@ onMounted(() => { overflow: hidden; } +.empty-page { + display: flex; + align-items: center; + justify-content: center; + color: #e0e6ff; + font-size: 18px; +} + @media (max-width: 1600px) { .main-title { font-size: 24px; diff --git a/src/main/java/com/mini/mybigscreen/biz/controller/HomeMenuController.java b/src/main/java/com/mini/mybigscreen/biz/controller/HomeMenuController.java index 0173803..d13a69f 100644 --- a/src/main/java/com/mini/mybigscreen/biz/controller/HomeMenuController.java +++ b/src/main/java/com/mini/mybigscreen/biz/controller/HomeMenuController.java @@ -9,7 +9,6 @@ import com.mini.mybigscreen.Model.Message; import com.mini.mybigscreen.Model.Result; import com.mini.mybigscreen.Model.TreeMenu; import com.mini.mybigscreen.biz.domain.HomeMenu; -import com.mini.mybigscreen.biz.domain.HomeModule; import com.mini.mybigscreen.biz.domain.HomeRoleMenu; import com.mini.mybigscreen.biz.mapper.HomeMenuMapper; import com.mini.mybigscreen.biz.service.HomeMenuService; diff --git a/src/main/java/com/mini/mybigscreen/biz/controller/HomeModuleController.java b/src/main/java/com/mini/mybigscreen/biz/controller/HomeModuleController.java index b202b63..ad92364 100644 --- a/src/main/java/com/mini/mybigscreen/biz/controller/HomeModuleController.java +++ b/src/main/java/com/mini/mybigscreen/biz/controller/HomeModuleController.java @@ -2,12 +2,16 @@ package com.mini.mybigscreen.biz.controller; import com.mini.mybigscreen.Model.Message; import com.mini.mybigscreen.Model.Result; +import com.mini.mybigscreen.biz.service.HomeModuleGroupService; +import com.mini.mybigscreen.biz.service.HomeModuleService; +import jakarta.annotation.Resource; +import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; /** *

- * 前端控制器 + * 前端控制器 *

* * @author gaoxq @@ -17,6 +21,13 @@ import org.springframework.web.bind.annotation.RestController; @RequestMapping("/biz/homeModule") public class HomeModuleController { + @Resource + private HomeModuleService moduleService; + + @GetMapping("list") + public Result getList() { + return Result.success(moduleService.list()); + } public Result save() { return Result.success(new Message("数据新增成功", 200)); diff --git a/src/main/java/com/mini/mybigscreen/biz/controller/HomeModuleGroupController.java b/src/main/java/com/mini/mybigscreen/biz/controller/HomeModuleGroupController.java new file mode 100644 index 0000000..df7d34b --- /dev/null +++ b/src/main/java/com/mini/mybigscreen/biz/controller/HomeModuleGroupController.java @@ -0,0 +1,31 @@ +package com.mini.mybigscreen.biz.controller; + +import com.mini.mybigscreen.Model.Result; +import com.mini.mybigscreen.biz.service.HomeModuleGroupService; +import jakarta.annotation.Resource; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + *

+ * 前端控制器 + *

+ * + * @author gaoxq + * @since 2026-03-07 + */ +@RestController +@RequestMapping("/biz/homeModuleGroup") +public class HomeModuleGroupController { + + + @Resource + private HomeModuleGroupService moduleGroupService; + + @GetMapping("list") + public Result getList(){ + return Result.success(moduleGroupService.list()); + } + +} diff --git a/src/main/java/com/mini/mybigscreen/biz/domain/HomeModule.java b/src/main/java/com/mini/mybigscreen/biz/domain/HomeModule.java index 381795f..917efa1 100644 --- a/src/main/java/com/mini/mybigscreen/biz/domain/HomeModule.java +++ b/src/main/java/com/mini/mybigscreen/biz/domain/HomeModule.java @@ -4,12 +4,8 @@ import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; - -import java.io.Serial; import java.io.Serializable; import java.time.LocalDateTime; - -import com.mini.mybigscreen.Model.BaseEntity; import lombok.Getter; import lombok.Setter; @@ -19,14 +15,13 @@ import lombok.Setter; *

* * @author gaoxq - * @since 2026-02-27 + * @since 2026-03-07 */ @Getter @Setter @TableName("biz_home_module") -public class HomeModule extends BaseEntity implements Serializable { +public class HomeModule implements Serializable { - @Serial private static final long serialVersionUID = 1L; @TableField("create_time") @@ -47,9 +42,18 @@ public class HomeModule extends BaseEntity implements Serializable { @TableField("module_code") private String moduleCode; + @TableField("path") + private String path; + + @TableField("title_name") + private String titleName; + /** * 说明描述 */ @TableField("remark") private String remark; + + @TableField("ustatus") + private String ustatus; } diff --git a/src/main/java/com/mini/mybigscreen/biz/domain/HomeModuleGroup.java b/src/main/java/com/mini/mybigscreen/biz/domain/HomeModuleGroup.java new file mode 100644 index 0000000..e6f0b25 --- /dev/null +++ b/src/main/java/com/mini/mybigscreen/biz/domain/HomeModuleGroup.java @@ -0,0 +1,38 @@ +package com.mini.mybigscreen.biz.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.io.Serializable; +import java.time.LocalDateTime; +import lombok.Getter; +import lombok.Setter; + +/** + *

+ * + *

+ * + * @author gaoxq + * @since 2026-03-07 + */ +@Getter +@Setter +@TableName("biz_home_module_group") +public class HomeModuleGroup implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableField("create_time") + private LocalDateTime createTime; + + @TableId(value = "group_id", type = IdType.AUTO) + private String groupId; + + @TableField("group_name") + private String groupName; + + @TableField("ustatus") + private Integer ustatus; +} diff --git a/src/main/java/com/mini/mybigscreen/biz/mapper/HomeModuleGroupMapper.java b/src/main/java/com/mini/mybigscreen/biz/mapper/HomeModuleGroupMapper.java new file mode 100644 index 0000000..cfdbf44 --- /dev/null +++ b/src/main/java/com/mini/mybigscreen/biz/mapper/HomeModuleGroupMapper.java @@ -0,0 +1,16 @@ +package com.mini.mybigscreen.biz.mapper; + +import com.github.yulichang.base.MPJBaseMapper; +import com.mini.mybigscreen.biz.domain.HomeModuleGroup; + +/** + *

+ * Mapper 接口 + *

+ * + * @author gaoxq + * @since 2026-03-07 + */ +public interface HomeModuleGroupMapper extends MPJBaseMapper { + +} diff --git a/src/main/java/com/mini/mybigscreen/biz/mapper/HomeModuleMapper.java b/src/main/java/com/mini/mybigscreen/biz/mapper/HomeModuleMapper.java index b6bdb59..e3b7154 100644 --- a/src/main/java/com/mini/mybigscreen/biz/mapper/HomeModuleMapper.java +++ b/src/main/java/com/mini/mybigscreen/biz/mapper/HomeModuleMapper.java @@ -9,7 +9,7 @@ import com.mini.mybigscreen.biz.domain.HomeModule; *

* * @author gaoxq - * @since 2026-02-27 + * @since 2026-03-07 */ public interface HomeModuleMapper extends MPJBaseMapper { diff --git a/src/main/java/com/mini/mybigscreen/biz/service/HomeModuleGroupService.java b/src/main/java/com/mini/mybigscreen/biz/service/HomeModuleGroupService.java new file mode 100644 index 0000000..f9da9a2 --- /dev/null +++ b/src/main/java/com/mini/mybigscreen/biz/service/HomeModuleGroupService.java @@ -0,0 +1,16 @@ +package com.mini.mybigscreen.biz.service; + +import com.mini.mybigscreen.biz.domain.HomeModuleGroup; +import com.baomidou.mybatisplus.extension.service.IService; + +/** + *

+ * 服务类 + *

+ * + * @author gaoxq + * @since 2026-03-07 + */ +public interface HomeModuleGroupService extends IService { + +} diff --git a/src/main/java/com/mini/mybigscreen/biz/service/impl/HomeModuleGroupServiceImpl.java b/src/main/java/com/mini/mybigscreen/biz/service/impl/HomeModuleGroupServiceImpl.java new file mode 100644 index 0000000..67a2061 --- /dev/null +++ b/src/main/java/com/mini/mybigscreen/biz/service/impl/HomeModuleGroupServiceImpl.java @@ -0,0 +1,20 @@ +package com.mini.mybigscreen.biz.service.impl; + +import com.mini.mybigscreen.biz.domain.HomeModuleGroup; +import com.mini.mybigscreen.biz.mapper.HomeModuleGroupMapper; +import com.mini.mybigscreen.biz.service.HomeModuleGroupService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +/** + *

+ * 服务实现类 + *

+ * + * @author gaoxq + * @since 2026-03-07 + */ +@Service +public class HomeModuleGroupServiceImpl extends ServiceImpl implements HomeModuleGroupService { + +} diff --git a/src/main/resources/mapper/HomeModuleGroupMapper.xml b/src/main/resources/mapper/HomeModuleGroupMapper.xml new file mode 100644 index 0000000..b568a21 --- /dev/null +++ b/src/main/resources/mapper/HomeModuleGroupMapper.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + create_time, group_id, group_name, ustatus + + + diff --git a/src/main/resources/mapper/HomeModuleMapper.xml b/src/main/resources/mapper/HomeModuleMapper.xml index aa6c106..f801a23 100644 --- a/src/main/resources/mapper/HomeModuleMapper.xml +++ b/src/main/resources/mapper/HomeModuleMapper.xml @@ -8,12 +8,15 @@ + + + - create_time, module_id, module_name, module_code, remark + create_time, module_id, module_name, module_code, path, title_name, remark, ustatus