Browse Source

feat(PageControlServiceImpl):组态页面导航栏数据改为数据库获取

HMY 7 months ago
parent
commit
3dabea5608

+ 9 - 0
admin/src/main/java/com/dcs/hnyz/controller/PageController.java

@@ -108,4 +108,13 @@ public class PageController extends BaseController
     public AjaxResult getPageList(@ApiParam(name = "equipmentId" ,value="设备id") Long equipmentId){
         return success(pageControlService.getPageListByEquipmentId(equipmentId));
     }
+
+    /**
+     * 获取组态页面的导航栏label
+     */
+    @GetMapping("/getNavLabel")
+    @ApiOperation(value = "获取组态页面的导航栏label")
+    public AjaxResult getNavLabel(){
+        return success(pageControlService.getNavLabel());
+    }
 }

+ 16 - 0
admin/src/main/java/com/dcs/hnyz/domain/vo/PageNavVO.java

@@ -0,0 +1,16 @@
+package com.dcs.hnyz.domain.vo;
+
+import lombok.Data;
+
+/**
+ * PageNavLabelVO
+ *
+ * @author: hmy
+ * @date: 2025/9/6 11:17
+ */
+@Data
+public class PageNavVO {
+    private String label;
+    private String path;
+    private String code;
+}

+ 7 - 0
admin/src/main/java/com/dcs/hnyz/service/IPageControlService.java

@@ -1,6 +1,7 @@
 package com.dcs.hnyz.service;
 
 import com.dcs.hnyz.domain.PageControl;
+import com.dcs.hnyz.domain.vo.PageNavVO;
 
 import java.util.List;
 import java.util.Map;
@@ -80,4 +81,10 @@ public interface IPageControlService
      * @return
      */
     PageControl getPageByCode(String pageCode);
+
+    /**
+     * 获取导航标签
+     * @return
+     */
+    List<PageNavVO> getNavLabel();
 }

+ 19 - 0
admin/src/main/java/com/dcs/hnyz/service/impl/PageControlServiceImpl.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.dcs.common.enums.GeneralStatus;
 import com.dcs.hnyz.domain.Equipment;
 import com.dcs.hnyz.domain.PageControl;
+import com.dcs.hnyz.domain.vo.PageNavVO;
 import com.dcs.hnyz.mapper.PageControlMapper;
 import com.dcs.hnyz.service.IEquipmentService;
 import com.dcs.hnyz.service.IPageControlService;
@@ -136,4 +137,22 @@ public class PageControlServiceImpl implements IPageControlService
     public PageControl getPageByCode(String pageCode) {
         return pageControlMapper.selectOne(new LambdaQueryWrapper<PageControl>().eq(PageControl::getPageCode,pageCode));
     }
+
+    @Override
+    public List<PageNavVO> getNavLabel() {
+        LambdaQueryWrapper<PageControl> wrapper=new LambdaQueryWrapper<>();
+        wrapper.eq(PageControl::getStatus, GeneralStatus.ENABLE.getCode());
+        List<PageControl> pageControlList = pageControlMapper.selectList(wrapper);
+        List<PageNavVO> pageNavList = pageControlList.stream()
+                .map(pageControl -> {
+                    PageNavVO vo = new PageNavVO();
+                    vo.setLabel(pageControl.getPageName());
+                    vo.setCode(pageControl.getPageCode());
+                    vo.setPath(pageControl.getPageUrl());
+                    return vo;
+                })
+                .collect(Collectors.toList());
+
+        return pageNavList;
+    }
 }

+ 8 - 0
ui/src/api/hnyz/pageControl.js

@@ -53,3 +53,11 @@ export function getPageList({ equipmentId }) {
     }
   })
 }
+
+//获取状态页面导航栏信息
+export function getNavLabel() {
+  return request({
+    url: '/hnyz/pageControl/getNavLabel',
+    method: 'get'
+  })
+}