Bladeren bron

feat-[厦门馆二期]:新增菜单排序

seeseele 7 maanden geleden
bovenliggende
commit
fea9988ec5
31 gewijzigde bestanden met toevoegingen van 884 en 60 verwijderingen
  1. 2 7
      src/main/java/com/ruoyi/project/VRdemo/controller/ConsultationController.java
  2. 2 8
      src/main/java/com/ruoyi/project/VRdemo/controller/EconomyController.java
  3. 2 7
      src/main/java/com/ruoyi/project/VRdemo/controller/InstitutionController.java
  4. 112 0
      src/main/java/com/ruoyi/project/VRdemo/controller/LibraryMenuController.java
  5. 2 7
      src/main/java/com/ruoyi/project/VRdemo/controller/PublicationController.java
  6. 22 17
      src/main/java/com/ruoyi/project/VRdemo/controller/RegionDevelopController.java
  7. 112 0
      src/main/java/com/ruoyi/project/VRdemo/domain/LibraryMenu.java
  8. 6 1
      src/main/java/com/ruoyi/project/VRdemo/mapper/ConsultationMapper.java
  9. 5 0
      src/main/java/com/ruoyi/project/VRdemo/mapper/EconomyMapper.java
  10. 5 0
      src/main/java/com/ruoyi/project/VRdemo/mapper/InstitutionMapper.java
  11. 76 0
      src/main/java/com/ruoyi/project/VRdemo/mapper/LibraryMenuMapper.java
  12. 5 0
      src/main/java/com/ruoyi/project/VRdemo/mapper/PublicationMapper.java
  13. 7 0
      src/main/java/com/ruoyi/project/VRdemo/mapper/RegionDevelopMapper.java
  14. 10 0
      src/main/java/com/ruoyi/project/VRdemo/service/IConsultationService.java
  15. 10 0
      src/main/java/com/ruoyi/project/VRdemo/service/IEconomyService.java
  16. 10 0
      src/main/java/com/ruoyi/project/VRdemo/service/IInstitutionService.java
  17. 70 0
      src/main/java/com/ruoyi/project/VRdemo/service/ILibraryMenuService.java
  18. 10 0
      src/main/java/com/ruoyi/project/VRdemo/service/IPublicationService.java
  19. 10 0
      src/main/java/com/ruoyi/project/VRdemo/service/IRegionDevelopService.java
  20. 29 1
      src/main/java/com/ruoyi/project/VRdemo/service/impl/ConsultationServiceImplImpl.java
  21. 29 1
      src/main/java/com/ruoyi/project/VRdemo/service/impl/EconomyServiceImpl.java
  22. 28 1
      src/main/java/com/ruoyi/project/VRdemo/service/impl/InstitutionServiceImpl.java
  23. 116 0
      src/main/java/com/ruoyi/project/VRdemo/service/impl/LibraryMenuServiceImpl.java
  24. 28 1
      src/main/java/com/ruoyi/project/VRdemo/service/impl/PublicationServiceImpl.java
  25. 27 3
      src/main/java/com/ruoyi/project/VRdemo/service/impl/RegionDevelopServiceImpl.java
  26. 10 2
      src/main/resources/mybatis/VRdemo/ConsultationMapper.xml
  27. 11 2
      src/main/resources/mybatis/VRdemo/EconomyMapper.xml
  28. 9 1
      src/main/resources/mybatis/VRdemo/InstitutionMapper.xml
  29. 103 0
      src/main/resources/mybatis/VRdemo/LibraryMenuMapper.xml
  30. 10 1
      src/main/resources/mybatis/VRdemo/PublicationMapper.xml
  31. 6 0
      src/main/resources/mybatis/VRdemo/RegionDevelopMapper.xml

+ 2 - 7
src/main/java/com/ruoyi/project/VRdemo/controller/ConsultationController.java

@@ -2,6 +2,7 @@ package com.ruoyi.project.VRdemo.controller;
 
 import java.io.IOException;
 import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
 import javax.servlet.http.HttpServletResponse;
 
@@ -51,13 +52,7 @@ public class ConsultationController extends BaseController {
     @Anonymous
     @GetMapping("/list")
     public AjaxResult list(Consultation consultation) {
-        List<Consultation> list = consultationService.selectConsultationList(consultation);
-
-        AjaxResult ajaxResult = new AjaxResult();
-        ajaxResult.put("code", 200);
-        ajaxResult.put("rows", list);
-        ajaxResult.put("total", list.size());
-        return ajaxResult;
+        return consultationService.selectConsultationListByMenu(consultation);
     }
 
     /**

+ 2 - 8
src/main/java/com/ruoyi/project/VRdemo/controller/EconomyController.java

@@ -2,6 +2,7 @@ package com.ruoyi.project.VRdemo.controller;
 
 import java.io.IOException;
 import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
 import javax.servlet.http.HttpServletResponse;
 
@@ -51,14 +52,7 @@ public class EconomyController extends BaseController {
     @Anonymous
     @GetMapping("/list")
     public AjaxResult list(Economy economy) {
-        List<Economy> list = economyService.selectEconomyList(economy);
-
-        AjaxResult ajaxResult = new AjaxResult();
-        ajaxResult.put("code", 200);
-        ajaxResult.put("rows", list);
-        ajaxResult.put("total", list.size());
-        return ajaxResult;
-
+        return economyService.selectEconomyListByMenu(economy);
     }
 
     /**

+ 2 - 7
src/main/java/com/ruoyi/project/VRdemo/controller/InstitutionController.java

@@ -2,6 +2,7 @@ package com.ruoyi.project.VRdemo.controller;
 
 import java.io.IOException;
 import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
 import javax.servlet.http.HttpServletResponse;
 
@@ -51,13 +52,7 @@ public class InstitutionController extends BaseController {
     @Anonymous
     @GetMapping("/list")
     public AjaxResult list(Institution institution) {
-        List<Institution> list = institutionService.selectInstitutionList(institution);
-
-        AjaxResult ajaxResult = new AjaxResult();
-        ajaxResult.put("code", 200);
-        ajaxResult.put("rows", list);
-        ajaxResult.put("total", list.size());
-        return ajaxResult;
+        return institutionService.selectInstitutionListByMenu(institution);
     }
 
     /**

+ 112 - 0
src/main/java/com/ruoyi/project/VRdemo/controller/LibraryMenuController.java

@@ -0,0 +1,112 @@
+package com.ruoyi.project.VRdemo.controller;
+
+import java.util.List;
+import javax.servlet.http.HttpServletResponse;
+
+import com.ruoyi.framework.aspectj.lang.annotation.Anonymous;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+import com.ruoyi.framework.aspectj.lang.annotation.Log;
+import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
+import com.ruoyi.project.VRdemo.domain.LibraryMenu;
+import com.ruoyi.project.VRdemo.service.ILibraryMenuService;
+import com.ruoyi.framework.web.controller.BaseController;
+import com.ruoyi.framework.web.domain.AjaxResult;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.framework.web.page.TableDataInfo;
+
+/**
+ * 南洋数字图书馆菜单管理Controller
+ *
+ * @author ruoyi
+ * @date 2024-11-01
+ */
+@RestController
+@RequestMapping("/vr/libraryMenu")
+public class LibraryMenuController extends BaseController {
+
+    private final ILibraryMenuService libraryMenuService;
+
+    public LibraryMenuController(@Autowired ILibraryMenuService libraryMenuService) {
+        this.libraryMenuService = libraryMenuService;
+    }
+
+    /**
+     * 查询南洋数字图书馆菜单管理列表
+     */
+    @PreAuthorize("@ss.hasAnyRoles('admin,xmg')")
+    @GetMapping("/list")
+    public TableDataInfo list(LibraryMenu libraryMenu) {
+        List<LibraryMenu> list = libraryMenuService.selectLibraryMenuList(libraryMenu);
+        return getDataTable(list);
+    }
+
+    /**
+     * 查询南洋数字图书馆一级菜单
+     */
+    @PreAuthorize("@ss.hasAnyRoles('admin,xmg')")
+    @GetMapping("/firstOrder")
+    public AjaxResult firstOrder() {
+        return success(libraryMenuService.selectMenuListByParentId(1L));
+    }
+
+    /**
+     * 导出南洋数字图书馆菜单管理列表
+     */
+    @PreAuthorize("@ss.hasAnyRoles('admin,xmg')")
+    @Log(title = "南洋数字图书馆菜单管理", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, LibraryMenu libraryMenu) {
+        List<LibraryMenu> list = libraryMenuService.selectLibraryMenuList(libraryMenu);
+        ExcelUtil<LibraryMenu> util = new ExcelUtil<LibraryMenu>(LibraryMenu.class);
+        util.exportExcel(response, list, "南洋数字图书馆菜单管理数据");
+    }
+
+    /**
+     * 获取南洋数字图书馆菜单管理详细信息
+     */
+    @PreAuthorize("@ss.hasAnyRoles('admin,xmg')")
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Long id) {
+        return success(libraryMenuService.selectLibraryMenuById(id));
+    }
+
+    /**
+     * 新增南洋数字图书馆菜单管理
+     */
+    @PreAuthorize("@ss.hasAnyRoles('admin,xmg')")
+    @Log(title = "南洋数字图书馆菜单管理", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody LibraryMenu libraryMenu) {
+        return toAjax(libraryMenuService.insertLibraryMenu(libraryMenu));
+    }
+
+    /**
+     * 修改南洋数字图书馆菜单管理
+     */
+    @PreAuthorize("@ss.hasAnyRoles('admin,xmg')")
+    @Log(title = "南洋数字图书馆菜单管理", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody LibraryMenu libraryMenu) {
+        return toAjax(libraryMenuService.updateLibraryMenu(libraryMenu));
+    }
+
+    /**
+     * 删除南洋数字图书馆菜单管理
+     */
+    @PreAuthorize("@ss.hasAnyRoles('admin,xmg')")
+    @Log(title = "南洋数字图书馆菜单管理", businessType = BusinessType.DELETE)
+    @DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable Long[] ids) {
+        return toAjax(libraryMenuService.deleteLibraryMenuByIds(ids));
+    }
+
+}

+ 2 - 7
src/main/java/com/ruoyi/project/VRdemo/controller/PublicationController.java

@@ -2,6 +2,7 @@ package com.ruoyi.project.VRdemo.controller;
 
 import java.io.IOException;
 import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
 import javax.servlet.http.HttpServletResponse;
 
@@ -51,13 +52,7 @@ public class PublicationController extends BaseController {
     @Anonymous
     @GetMapping("/list")
     public AjaxResult list(Publication publication) {
-        List<Publication> list = publicationService.selectPublicationList(publication);
-
-        AjaxResult ajaxResult = new AjaxResult();
-        ajaxResult.put("code", 200);
-        ajaxResult.put("rows", list);
-        ajaxResult.put("total", list.size());
-        return ajaxResult;
+       return publicationService.selectPublicationListByMenu(publication);
     }
 
     /**

+ 22 - 17
src/main/java/com/ruoyi/project/VRdemo/controller/RegionDevelopController.java

@@ -2,6 +2,7 @@ package com.ruoyi.project.VRdemo.controller;
 
 import java.io.IOException;
 import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
 import javax.servlet.http.HttpServletResponse;
 
@@ -52,13 +53,7 @@ public class RegionDevelopController extends BaseController {
     @Anonymous
     @GetMapping("/list")
     public AjaxResult list(RegionDevelop regionDevelop) {
-        List<RegionDevelop> list = regionDevelopService.selectRegionDevelopList(regionDevelop);
-
-        AjaxResult ajaxResult = new AjaxResult();
-        ajaxResult.put("code", 200);
-        ajaxResult.put("rows", list);
-        ajaxResult.put("total", list.size());
-        return ajaxResult;
+        return regionDevelopService.selectRegionDevelopListByMenu(regionDevelop);
     }
 
     /**
@@ -81,18 +76,10 @@ public class RegionDevelopController extends BaseController {
         return success(regionDevelopService.selectRegionDevelopById(id));
     }
 
-    /**
-     * 新增东南亚地区发展报告
-     */
-    @PreAuthorize("@ss.hasAnyRoles('admin,xmg')")
-    @Log(title = "东南亚地区发展报告", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody RegionDevelop regionDevelop) {
+    public RegionDevelop transformFile(RegionDevelop regionDevelop){
         //获取编号为00的文件路径
         String pathStr = regionDevelop.getPath();
-        if(StringUtils.isNull(pathStr)){
-            return error("上传文件不能为空");
-        }
+        System.out.println(pathStr);
         String[] paths = pathStr.split(","); //将批量文件名转化为数组
         String zero = "";
         for (String s : paths) {
@@ -102,10 +89,25 @@ public class RegionDevelopController extends BaseController {
                 zero = s;
             }
         }
+        System.out.println(zero);
         regionDevelop.setPath(zero);
         int count = paths.length;//获取上传文件数量
         regionDevelop.setCount((long) count);
 
+        return regionDevelop;
+    }
+
+    /**
+     * 新增东南亚地区发展报告
+     */
+    @PreAuthorize("@ss.hasAnyRoles('admin,xmg')")
+    @Log(title = "东南亚地区发展报告", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody RegionDevelop regionDevelop) {
+        if(!StringUtils.isNull(regionDevelop.getPath())){
+            regionDevelop = transformFile(regionDevelop);
+        }
+
         return toAjax(regionDevelopService.insertRegionDevelop(regionDevelop));
     }
 
@@ -116,6 +118,9 @@ public class RegionDevelopController extends BaseController {
     @Log(title = "东南亚地区发展报告", businessType = BusinessType.UPDATE)
     @PutMapping
     public AjaxResult edit(@RequestBody RegionDevelop regionDevelop) {
+        if(!StringUtils.isNull(regionDevelop.getPath())){
+            regionDevelop = transformFile(regionDevelop);
+        }
         return toAjax(regionDevelopService.updateRegionDevelop(regionDevelop));
     }
 

+ 112 - 0
src/main/java/com/ruoyi/project/VRdemo/domain/LibraryMenu.java

@@ -0,0 +1,112 @@
+package com.ruoyi.project.VRdemo.domain;
+
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.ruoyi.framework.aspectj.lang.annotation.Excel;
+import com.ruoyi.framework.web.domain.BaseEntity;
+
+/**
+ * 南洋数字图书馆菜单管理对象 vr_library_menu
+ *
+ * @author ruoyi
+ * @date 2024-11-01
+ */
+public class LibraryMenu extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * id
+     */
+    private Long id;
+
+    /**
+     * 菜单名
+     */
+    @Excel(name = "菜单名")
+    private String title;
+
+    /**
+     * 对应模块
+     */
+    @Excel(name = "对应模块")
+    private String module;
+
+    @Excel(name = "菜单类型")
+    private Integer type;
+
+    /**
+     * 父菜单id
+     */
+    @Excel(name = "父菜单id")
+    private Long parentId;
+
+    /**
+     * 显示顺序
+     */
+    @Excel(name = "显示顺序")
+    private Integer orderNum;
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setTitle(String title) {
+        this.title = title;
+    }
+
+    public String getTitle() {
+        return title;
+    }
+
+    public void setParentId(Long parentId) {
+        this.parentId = parentId;
+    }
+
+    public String getModule() {
+        return module;
+    }
+
+    public void setModule(String module) {
+        this.module = module;
+    }
+
+    public Integer getType() {
+        return type;
+    }
+
+    public void setType(Integer type) {
+        this.type = type;
+    }
+
+    public Long getParentId() {
+        return parentId;
+    }
+
+    public void setOrderNum(Integer orderNum) {
+        this.orderNum = orderNum;
+    }
+
+    public Integer getOrderNum() {
+        return orderNum;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
+                .append("id", getId())
+                .append("title", getTitle())
+                .append("parentId", getParentId())
+                .append("orderNum", getOrderNum())
+                .append("module", getModule())
+                .append("type", getType())
+                .append("createTime", getCreateTime())
+                .append("createBy", getCreateBy())
+                .append("updateTime", getUpdateTime())
+                .append("updateBy", getUpdateBy())
+                .toString();
+    }
+}

+ 6 - 1
src/main/java/com/ruoyi/project/VRdemo/mapper/ConsultationMapper.java

@@ -12,7 +12,7 @@ import org.apache.ibatis.annotations.Param;
  * @date 2024-09-26
  */
 public interface ConsultationMapper {
-    
+
     /**
      * 查询博雅集南洋资讯检索
      *
@@ -35,6 +35,11 @@ public interface ConsultationMapper {
     List<Consultation> selectConsultationList(Consultation consultation);
 
     /**
+     * 根据所属区查询咨询记录
+     */
+    List<Consultation> selectConsultationListByAffiliation(String affiliation);
+
+    /**
      * 新增博雅集南洋资讯检索
      *
      * @param consultation 博雅集南洋资讯检索

+ 5 - 0
src/main/java/com/ruoyi/project/VRdemo/mapper/EconomyMapper.java

@@ -34,6 +34,11 @@ public interface EconomyMapper {
     List<Economy> selectEconomyList(Economy economy);
 
     /**
+     * 根据所属区查询列表
+     */
+    List<Economy> selectEconomyListByAffiliation(String affiliation);
+
+    /**
      * 新增东南亚经济统计
      *
      * @param economy 东南亚经济统计

+ 5 - 0
src/main/java/com/ruoyi/project/VRdemo/mapper/InstitutionMapper.java

@@ -35,6 +35,11 @@ public interface InstitutionMapper
     List<Institution> selectInstitutionList(Institution institution);
 
     /**
+     * 根据所属区查询博雅集东南亚研究机构列表
+     */
+    List<Institution> selectInstitutionListByAffiliation(String affiliation);
+
+    /**
      * 新增博雅集东南亚研究机构
      * 
      * @param institution 博雅集东南亚研究机构

+ 76 - 0
src/main/java/com/ruoyi/project/VRdemo/mapper/LibraryMenuMapper.java

@@ -0,0 +1,76 @@
+package com.ruoyi.project.VRdemo.mapper;
+
+import java.util.List;
+
+import com.ruoyi.project.VRdemo.domain.LibraryMenu;
+
+/**
+ * 南洋数字图书馆菜单管理Mapper接口
+ *
+ * @author ruoyi
+ * @date 2024-11-01
+ */
+public interface LibraryMenuMapper {
+
+    /**
+     * 查询南洋数字图书馆菜单管理列表
+     *
+     * @param libraryMenu 南洋数字图书馆菜单管理
+     * @return 南洋数字图书馆菜单管理集合
+     */
+    List<LibraryMenu> selectLibraryMenuList(LibraryMenu libraryMenu);
+
+    /**
+     * 通过父id查询南洋数字图书馆菜单管理子列表
+     *
+     * @return 南洋数字图书馆菜单管理集合
+     */
+    List<LibraryMenu> selectChildMenuListById(Long id);
+
+    /**
+     * 查询南洋数字图书馆菜单管理
+     *
+     * @param id 南洋数字图书馆菜单管理主键
+     * @return 南洋数字图书馆菜单管理
+     */
+    LibraryMenu selectLibraryMenuById(Long id);
+
+    /**
+     * 通过模块名查询南洋数字图书馆菜单管理
+     *
+     * @return 南洋数字图书馆菜单管理
+     */
+    LibraryMenu selectLibraryMenuByModule(String module);
+
+    /**
+     * 新增南洋数字图书馆菜单管理
+     *
+     * @param libraryMenu 南洋数字图书馆菜单管理
+     * @return 结果
+     */
+    int insertLibraryMenu(LibraryMenu libraryMenu);
+
+    /**
+     * 修改南洋数字图书馆菜单管理
+     *
+     * @param libraryMenu 南洋数字图书馆菜单管理
+     * @return 结果
+     */
+    int updateLibraryMenu(LibraryMenu libraryMenu);
+
+    /**
+     * 删除南洋数字图书馆菜单管理
+     *
+     * @param id 南洋数字图书馆菜单管理主键
+     * @return 结果
+     */
+    int deleteLibraryMenuById(Long id);
+
+    /**
+     * 批量删除南洋数字图书馆菜单管理
+     *
+     * @param ids 需要删除的数据主键集合
+     * @return 结果
+     */
+    int deleteLibraryMenuByIds(Long[] ids);
+}

+ 5 - 0
src/main/java/com/ruoyi/project/VRdemo/mapper/PublicationMapper.java

@@ -37,6 +37,11 @@ public interface PublicationMapper {
     List<Publication> selectPublicationList(Publication publication);
 
     /**
+     * 根据所属区查询东南亚连续出版物列表
+     */
+    List<Publication> selectPublicationListByAffiliation(String affiliation);
+
+    /**
      * 新增东南亚连续出版物
      *
      * @param publication 东南亚连续出版物

+ 7 - 0
src/main/java/com/ruoyi/project/VRdemo/mapper/RegionDevelopMapper.java

@@ -34,6 +34,13 @@ public interface RegionDevelopMapper {
     List<RegionDevelop> selectRegionDevelopList(RegionDevelop regionDevelop);
 
     /**
+     * 根据类型查询东南亚地区发展报告列表
+     *
+     * @return 东南亚地区发展报告集合
+     */
+    List<RegionDevelop> selectRegionDevelopListByType(String type);
+
+    /**
      * 新增东南亚地区发展报告
      *
      * @param regionDevelop 东南亚地区发展报告

+ 10 - 0
src/main/java/com/ruoyi/project/VRdemo/service/IConsultationService.java

@@ -1,7 +1,9 @@
 package com.ruoyi.project.VRdemo.service;
 
+import java.util.HashMap;
 import java.util.List;
 
+import com.ruoyi.framework.web.domain.AjaxResult;
 import com.ruoyi.project.VRdemo.domain.Consultation;
 
 /**
@@ -29,6 +31,14 @@ public interface IConsultationService {
     List<Consultation> selectConsultationList(Consultation consultation);
 
     /**
+     * 根据所属区查询博雅集南洋资讯检索列表
+     *
+     * @param consultation 博雅集南洋资讯检索
+     * @return 博雅集南洋资讯检索集合
+     */
+    AjaxResult selectConsultationListByMenu(Consultation consultation);
+
+    /**
      * 新增博雅集南洋资讯检索
      *
      * @param consultation 博雅集南洋资讯检索

+ 10 - 0
src/main/java/com/ruoyi/project/VRdemo/service/IEconomyService.java

@@ -1,7 +1,9 @@
 package com.ruoyi.project.VRdemo.service;
 
+import java.util.HashMap;
 import java.util.List;
 
+import com.ruoyi.framework.web.domain.AjaxResult;
 import com.ruoyi.project.VRdemo.domain.Economy;
 
 /**
@@ -29,6 +31,14 @@ public interface IEconomyService {
     List<Economy> selectEconomyList(Economy economy);
 
     /**
+     * 查询东南亚经济统计列表
+     *
+     * @param economy 东南亚经济统计
+     * @return 东南亚经济统计集合
+     */
+    AjaxResult selectEconomyListByMenu(Economy economy);
+
+    /**
      * 新增东南亚经济统计
      *
      * @param economy 东南亚经济统计

+ 10 - 0
src/main/java/com/ruoyi/project/VRdemo/service/IInstitutionService.java

@@ -1,7 +1,9 @@
 package com.ruoyi.project.VRdemo.service;
 
+import java.util.HashMap;
 import java.util.List;
 
+import com.ruoyi.framework.web.domain.AjaxResult;
 import com.ruoyi.project.VRdemo.domain.Institution;
 
 /**
@@ -29,6 +31,14 @@ public interface IInstitutionService {
     List<Institution> selectInstitutionList(Institution institution);
 
     /**
+     * 根据菜单查询博雅集东南亚研究机构列表
+     *
+     * @param institution 博雅集东南亚研究机构
+     * @return 博雅集东南亚研究机构集合
+     */
+    AjaxResult selectInstitutionListByMenu(Institution institution);
+
+    /**
      * 新增博雅集东南亚研究机构
      *
      * @param institution 博雅集东南亚研究机构

+ 70 - 0
src/main/java/com/ruoyi/project/VRdemo/service/ILibraryMenuService.java

@@ -0,0 +1,70 @@
+package com.ruoyi.project.VRdemo.service;
+
+import java.util.List;
+
+import com.ruoyi.project.VRdemo.domain.LibraryMenu;
+
+/**
+ * 南洋数字图书馆菜单管理Service接口
+ *
+ * @author ruoyi
+ * @date 2024-11-01
+ */
+public interface ILibraryMenuService {
+
+    /**
+     * 查询南洋数字图书馆菜单管理
+     *
+     * @param id 南洋数字图书馆菜单管理主键
+     * @return 南洋数字图书馆菜单管理
+     */
+    LibraryMenu selectLibraryMenuById(Long id);
+
+    /**
+     * 查询南洋数字图书馆菜单管理列表
+     *
+     * @param libraryMenu 南洋数字图书馆菜单管理
+     * @return 南洋数字图书馆菜单管理集合
+     */
+    List<LibraryMenu> selectLibraryMenuList(LibraryMenu libraryMenu);
+
+    /**
+     * 根据父id查询南洋数字图书馆菜单管理列表
+     *
+     * @return 南洋数字图书馆菜单管理集合
+     */
+    List<LibraryMenu> selectMenuListByParentId(Long parentId);
+
+    /**
+     * 新增南洋数字图书馆菜单管理
+     *
+     * @param libraryMenu 南洋数字图书馆菜单管理
+     * @return 结果
+     */
+    int insertLibraryMenu(LibraryMenu libraryMenu);
+
+    /**
+     * 修改南洋数字图书馆菜单管理
+     *
+     * @param libraryMenu 南洋数字图书馆菜单管理
+     * @return 结果
+     */
+    int updateLibraryMenu(LibraryMenu libraryMenu);
+
+    /**
+     * 批量删除南洋数字图书馆菜单管理
+     *
+     * @param ids 需要删除的南洋数字图书馆菜单管理主键集合
+     * @return 结果
+     */
+    int deleteLibraryMenuByIds(Long[] ids);
+
+    /**
+     * 删除南洋数字图书馆菜单管理信息
+     *
+     * @param id 南洋数字图书馆菜单管理主键
+     * @return 结果
+     */
+    int deleteLibraryMenuById(Long id);
+
+}

+ 10 - 0
src/main/java/com/ruoyi/project/VRdemo/service/IPublicationService.java

@@ -1,7 +1,9 @@
 package com.ruoyi.project.VRdemo.service;
 
+import java.util.HashMap;
 import java.util.List;
 
+import com.ruoyi.framework.web.domain.AjaxResult;
 import com.ruoyi.project.VRdemo.domain.Publication;
 
 /**
@@ -29,6 +31,14 @@ public interface IPublicationService {
     List<Publication> selectPublicationList(Publication publication);
 
     /**
+     * 根据菜单查询东南亚连续出版物列表
+     *
+     * @param publication 东南亚连续出版物
+     * @return 东南亚连续出版物集合
+     */
+    AjaxResult selectPublicationListByMenu(Publication publication);
+
+    /**
      * 新增东南亚连续出版物
      *
      * @param publication 东南亚连续出版物

+ 10 - 0
src/main/java/com/ruoyi/project/VRdemo/service/IRegionDevelopService.java

@@ -1,7 +1,9 @@
 package com.ruoyi.project.VRdemo.service;
 
+import java.util.HashMap;
 import java.util.List;
 
+import com.ruoyi.framework.web.domain.AjaxResult;
 import com.ruoyi.project.VRdemo.domain.RegionDevelop;
 
 /**
@@ -29,6 +31,14 @@ public interface IRegionDevelopService {
     List<RegionDevelop> selectRegionDevelopList(RegionDevelop regionDevelop);
 
     /**
+     *
+     *
+     * @param regionDevelop 东南亚地区发展报告
+     * @return 东南亚地区发展报告集合
+     */
+    AjaxResult selectRegionDevelopListByMenu(RegionDevelop regionDevelop);
+
+    /**
      * 新增东南亚地区发展报告
      *
      * @param regionDevelop 东南亚地区发展报告

+ 29 - 1
src/main/java/com/ruoyi/project/VRdemo/service/impl/ConsultationServiceImplImpl.java

@@ -1,9 +1,14 @@
 package com.ruoyi.project.VRdemo.service.impl;
 
+import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
 
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.framework.web.domain.AjaxResult;
+import com.ruoyi.project.VRdemo.domain.LibraryMenu;
+import com.ruoyi.project.VRdemo.mapper.LibraryMenuMapper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.ruoyi.project.VRdemo.mapper.ConsultationMapper;
@@ -20,8 +25,12 @@ public class ConsultationServiceImplImpl implements IConsultationService {
 
     private final ConsultationMapper consultationMapper;
 
-    public ConsultationServiceImplImpl(@Autowired ConsultationMapper consultationMapper) {
+    private final LibraryMenuMapper libraryMenuMapper;
+
+    public ConsultationServiceImplImpl(@Autowired ConsultationMapper consultationMapper,
+                                       @Autowired LibraryMenuMapper libraryMenuMapper) {
         this.consultationMapper = consultationMapper;
+        this.libraryMenuMapper = libraryMenuMapper;
     }
 
     /**
@@ -47,6 +56,25 @@ public class ConsultationServiceImplImpl implements IConsultationService {
     }
 
     /**
+     * 根据所属区查询博雅集南洋资讯检索列表
+     *
+     * @param consultation 博雅集南洋资讯检索
+     * @return 博雅集南洋资讯检索集合
+     */
+    @Override
+    public AjaxResult selectConsultationListByMenu(Consultation consultation) {
+        LibraryMenu parentMenu = libraryMenuMapper.selectLibraryMenuByModule("consultation");
+        List<LibraryMenu> menuList = libraryMenuMapper.selectChildMenuListById(parentMenu.getId());
+        AjaxResult data = new AjaxResult();
+        for (LibraryMenu menu : menuList){
+            List<Consultation> consultations = consultationMapper.selectConsultationListByAffiliation(menu.getTitle());
+            data.put(menu.getTitle(), consultations);
+        }
+
+        return data;
+    }
+
+    /**
      * 新增博雅集南洋资讯检索
      *
      * @param consultation 博雅集南洋资讯检索

+ 29 - 1
src/main/java/com/ruoyi/project/VRdemo/service/impl/EconomyServiceImpl.java

@@ -1,10 +1,15 @@
 package com.ruoyi.project.VRdemo.service.impl;
 
+import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
 
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.framework.web.domain.AjaxResult;
 import com.ruoyi.project.VRdemo.domain.Economy;
+import com.ruoyi.project.VRdemo.domain.LibraryMenu;
+import com.ruoyi.project.VRdemo.mapper.LibraryMenuMapper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.ruoyi.project.VRdemo.mapper.EconomyMapper;
@@ -21,8 +26,12 @@ public class EconomyServiceImpl implements IEconomyService {
 
     private final EconomyMapper economyMapper;
 
-    public EconomyServiceImpl(@Autowired EconomyMapper economyMapper) {
+    private final LibraryMenuMapper libraryMenuMapper;
+
+    public EconomyServiceImpl(@Autowired EconomyMapper economyMapper,
+                              @Autowired LibraryMenuMapper libraryMenuMapper) {
         this.economyMapper = economyMapper;
+        this.libraryMenuMapper = libraryMenuMapper;
     }
 
     /**
@@ -48,6 +57,25 @@ public class EconomyServiceImpl implements IEconomyService {
     }
 
     /**
+     * 查询东南亚经济统计列表
+     *
+     * @param economy 东南亚经济统计
+     * @return 东南亚经济统计集合
+     */
+    @Override
+    public AjaxResult selectEconomyListByMenu(Economy economy) {
+        LibraryMenu parentMenu = libraryMenuMapper.selectLibraryMenuByModule("economy");
+        List<LibraryMenu> menuList = libraryMenuMapper.selectChildMenuListById(parentMenu.getId());
+        AjaxResult data = new AjaxResult();
+        for (LibraryMenu menu : menuList){
+            List<Economy> economies = economyMapper.selectEconomyListByAffiliation(menu.getTitle());
+            data.put(menu.getTitle(), economies);
+        }
+
+        return data;
+    }
+
+    /**
      * 新增东南亚经济统计
      *
      * @param economy 东南亚经济统计

+ 28 - 1
src/main/java/com/ruoyi/project/VRdemo/service/impl/InstitutionServiceImpl.java

@@ -1,10 +1,15 @@
 package com.ruoyi.project.VRdemo.service.impl;
 
 
+import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
 
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.framework.web.domain.AjaxResult;
+import com.ruoyi.project.VRdemo.domain.LibraryMenu;
+import com.ruoyi.project.VRdemo.mapper.LibraryMenuMapper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.ruoyi.project.VRdemo.mapper.InstitutionMapper;
@@ -22,8 +27,11 @@ public class InstitutionServiceImpl implements IInstitutionService {
 
     private final InstitutionMapper institutionMapper;
 
-    public InstitutionServiceImpl(@Autowired InstitutionMapper institutionMapper) {
+    private final LibraryMenuMapper libraryMenuMapper;
+
+    public InstitutionServiceImpl(@Autowired InstitutionMapper institutionMapper, @Autowired LibraryMenuMapper libraryMenuMapper) {
         this.institutionMapper = institutionMapper;
+        this.libraryMenuMapper = libraryMenuMapper;
     }
 
     /**
@@ -49,6 +57,25 @@ public class InstitutionServiceImpl implements IInstitutionService {
     }
 
     /**
+     * 根据菜单查询博雅集东南亚研究机构列表
+     *
+     * @param institution 博雅集东南亚研究机构
+     * @return 博雅集东南亚研究机构集合
+     */
+    @Override
+    public AjaxResult selectInstitutionListByMenu(Institution institution) {
+        LibraryMenu parentMenu = libraryMenuMapper.selectLibraryMenuByModule("institution");
+        List<LibraryMenu> menuList = libraryMenuMapper.selectChildMenuListById(parentMenu.getId());
+        AjaxResult data = new AjaxResult();
+        for (LibraryMenu menu : menuList){
+            List<Institution> institutions = institutionMapper.selectInstitutionListByAffiliation(menu.getTitle());
+            data.put(menu.getTitle(), institutions);
+        }
+
+        return data;
+    }
+
+    /**
      * 新增博雅集东南亚研究机构
      *
      * @param institution 博雅集东南亚研究机构

+ 116 - 0
src/main/java/com/ruoyi/project/VRdemo/service/impl/LibraryMenuServiceImpl.java

@@ -0,0 +1,116 @@
+package com.ruoyi.project.VRdemo.service.impl;
+
+import java.util.List;
+
+import com.ruoyi.common.utils.DateUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.ruoyi.project.VRdemo.mapper.LibraryMenuMapper;
+import com.ruoyi.project.VRdemo.domain.LibraryMenu;
+import com.ruoyi.project.VRdemo.service.ILibraryMenuService;
+
+/**
+ * 南洋数字图书馆菜单管理Service业务层处理
+ *
+ * @author ruoyi
+ * @date 2024-11-01
+ */
+@Service
+public class LibraryMenuServiceImpl implements ILibraryMenuService {
+
+    private final LibraryMenuMapper libraryMenuMapper;
+
+    public LibraryMenuServiceImpl(@Autowired LibraryMenuMapper libraryMenuMapper) {
+        this.libraryMenuMapper = libraryMenuMapper;
+    }
+
+    /**
+     * 查询南洋数字图书馆菜单管理
+     *
+     * @param id 南洋数字图书馆菜单管理主键
+     * @return 南洋数字图书馆菜单管理
+     */
+    @Override
+    public LibraryMenu selectLibraryMenuById(Long id) {
+        return libraryMenuMapper.selectLibraryMenuById(id);
+    }
+
+    /**
+     * 查询南洋数字图书馆菜单管理列表
+     *
+     * @param libraryMenu 南洋数字图书馆菜单管理
+     * @return 南洋数字图书馆菜单管理
+     */
+    @Override
+    public List<LibraryMenu> selectLibraryMenuList(LibraryMenu libraryMenu) {
+        return libraryMenuMapper.selectLibraryMenuList(libraryMenu);
+    }
+
+    /**
+     * 根据父id查询南洋数字图书馆菜单管理列表
+     *
+     * @return 南洋数字图书馆菜单管理集合
+     */
+    @Override
+    public List<LibraryMenu> selectMenuListByParentId(Long parentId) {
+        return libraryMenuMapper.selectChildMenuListById(parentId);
+    }
+
+    /**
+     * 新增南洋数字图书馆菜单管理
+     *
+     * @param libraryMenu 南洋数字图书馆菜单管理
+     * @return 结果
+     */
+    @Override
+    public int insertLibraryMenu(LibraryMenu libraryMenu) {
+        if (libraryMenu.getParentId() == 17L){
+            libraryMenu.setModule("region_develop_type");
+        } else if (libraryMenu.getParentId() == 10L){
+            libraryMenu.setModule("consultation_affiliation");
+        }else if (libraryMenu.getParentId() == 14L){
+            libraryMenu.setModule("economy_affiliation");
+        }else if (libraryMenu.getParentId() == 11L){
+            libraryMenu.setModule("institution_affiliation");
+        }else if (libraryMenu.getParentId() == 15L){
+            libraryMenu.setModule("publication_affiliation");
+        }
+        libraryMenu.setCreateTime(DateUtils.getNowDate());
+        return libraryMenuMapper.insertLibraryMenu(libraryMenu);
+    }
+
+    /**
+     * 修改南洋数字图书馆菜单管理
+     *
+     * @param libraryMenu 南洋数字图书馆菜单管理
+     * @return 结果
+     */
+    @Override
+    public int updateLibraryMenu(LibraryMenu libraryMenu) {
+        libraryMenu.setUpdateTime(DateUtils.getNowDate());
+        return libraryMenuMapper.updateLibraryMenu(libraryMenu);
+    }
+
+    /**
+     * 批量删除南洋数字图书馆菜单管理
+     *
+     * @param ids 需要删除的南洋数字图书馆菜单管理主键
+     * @return 结果
+     */
+    @Override
+    public int deleteLibraryMenuByIds(Long[] ids) {
+        return libraryMenuMapper.deleteLibraryMenuByIds(ids);
+    }
+
+    /**
+     * 删除南洋数字图书馆菜单管理信息
+     *
+     * @param id 南洋数字图书馆菜单管理主键
+     * @return 结果
+     */
+    @Override
+    public int deleteLibraryMenuById(Long id) {
+        return libraryMenuMapper.deleteLibraryMenuById(id);
+    }
+
+}

+ 28 - 1
src/main/java/com/ruoyi/project/VRdemo/service/impl/PublicationServiceImpl.java

@@ -1,10 +1,15 @@
 package com.ruoyi.project.VRdemo.service.impl;
 
+import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
 
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.SecurityUtils;
+import com.ruoyi.framework.web.domain.AjaxResult;
+import com.ruoyi.project.VRdemo.domain.LibraryMenu;
 import com.ruoyi.project.VRdemo.domain.Publication;
+import com.ruoyi.project.VRdemo.mapper.LibraryMenuMapper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.ruoyi.project.VRdemo.mapper.PublicationMapper;
@@ -21,8 +26,11 @@ public class PublicationServiceImpl implements IPublicationService {
 
     private final PublicationMapper publicationMapper;
 
-    public PublicationServiceImpl(@Autowired PublicationMapper publicationMapper) {
+    private final LibraryMenuMapper libraryMenuMapper;
+
+    public PublicationServiceImpl(@Autowired PublicationMapper publicationMapper, @Autowired LibraryMenuMapper libraryMenuMapper) {
         this.publicationMapper = publicationMapper;
+        this.libraryMenuMapper = libraryMenuMapper;
     }
 
     /**
@@ -48,6 +56,25 @@ public class PublicationServiceImpl implements IPublicationService {
     }
 
     /**
+     * 根据菜单查询东南亚连续出版物列表
+     *
+     * @param publication 东南亚连续出版物
+     * @return 东南亚连续出版物集合
+     */
+    @Override
+    public AjaxResult selectPublicationListByMenu(Publication publication) {
+        LibraryMenu parentMenu = libraryMenuMapper.selectLibraryMenuByModule("publication");
+        List<LibraryMenu> menuList = libraryMenuMapper.selectChildMenuListById(parentMenu.getId());
+        AjaxResult data = new AjaxResult();
+        for (LibraryMenu menu : menuList) {
+            List<Publication> publications = publicationMapper.selectPublicationListByAffiliation(menu.getTitle());
+            data.put(menu.getTitle(), publications);
+        }
+
+        return data;
+    }
+
+    /**
      * 新增东南亚连续出版物
      *
      * @param publication 东南亚连续出版物

+ 27 - 3
src/main/java/com/ruoyi/project/VRdemo/service/impl/RegionDevelopServiceImpl.java

@@ -2,6 +2,7 @@ package com.ruoyi.project.VRdemo.service.impl;
 
 import java.io.File;
 import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
 
 import com.ruoyi.common.constant.Constants;
@@ -9,9 +10,10 @@ import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.framework.config.RuoYiConfig;
-import com.ruoyi.project.VRdemo.domain.NoteNationData;
+import com.ruoyi.framework.web.domain.AjaxResult;
+import com.ruoyi.project.VRdemo.domain.LibraryMenu;
 import com.ruoyi.project.VRdemo.domain.RegionDevelop;
-import com.ruoyi.project.VRdemo.domain.StudyData;
+import com.ruoyi.project.VRdemo.mapper.LibraryMenuMapper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.ruoyi.project.VRdemo.mapper.RegionDevelopMapper;
@@ -28,8 +30,12 @@ public class RegionDevelopServiceImpl implements IRegionDevelopService {
 
     private final RegionDevelopMapper regionDevelopMapper;
 
-    public RegionDevelopServiceImpl(@Autowired RegionDevelopMapper regionDevelopMapper) {
+    private final LibraryMenuMapper libraryMenuMapper;
+
+    public RegionDevelopServiceImpl(@Autowired RegionDevelopMapper regionDevelopMapper,
+                                    @Autowired LibraryMenuMapper libraryMenuMapper) {
         this.regionDevelopMapper = regionDevelopMapper;
+        this.libraryMenuMapper = libraryMenuMapper;
     }
 
     /**
@@ -55,6 +61,24 @@ public class RegionDevelopServiceImpl implements IRegionDevelopService {
     }
 
     /**
+     * 查询东南亚地区发展报告列表
+     *
+     * @param regionDevelop 东南亚地区发展报告
+     * @return 东南亚地区发展报告
+     */
+    public AjaxResult selectRegionDevelopListByMenu(RegionDevelop regionDevelop) {
+        LibraryMenu parentMenu = libraryMenuMapper.selectLibraryMenuByModule("region_develop");
+        List<LibraryMenu> menuList = libraryMenuMapper.selectChildMenuListById(parentMenu.getId());
+        AjaxResult data = new AjaxResult();
+        for (LibraryMenu menu : menuList){
+            List<RegionDevelop> regionDevelops = regionDevelopMapper.selectRegionDevelopListByType(menu.getTitle());
+            data.put(menu.getTitle(), regionDevelops);
+        }
+
+        return data;
+    }
+
+    /**
      * 新增东南亚地区发展报告
      *
      * @param regionDevelop 东南亚地区发展报告

+ 10 - 2
src/main/resources/mybatis/VRdemo/ConsultationMapper.xml

@@ -3,7 +3,7 @@
 PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.ruoyi.project.VRdemo.mapper.ConsultationMapper">
-    
+
     <resultMap type="Consultation" id="ConsultationResult">
         <result property="id"    column="id"    />
         <result property="affiliation" column="affiliation"/>
@@ -34,7 +34,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="introduce != null  and introduce != ''"> and introduce like concat('%', #{introduce}, '%')</if>
             <if test="sort != null  and sort != ''"> and sort = #{sort}</if>
         </where>
-        ORDER BY sort
+        group by affiliation, location, id, chinese_name, english_name, link, introduce, sort, create_time, create_by, update_time, update_by
+        order by affiliation, location, sort
+    </select>
+
+    <select id="selectConsultationListByAffiliation" parameterType="String" resultMap="ConsultationResult">
+        <include refid="selectConsultationVo"/>
+        where affiliation = #{affiliation}
+        group by location, id, affiliation, chinese_name, english_name, link, introduce, sort, create_time, create_by, update_time, update_by
+        order by location, sort
     </select>
     
     <select id="selectConsultationById" parameterType="Long" resultMap="ConsultationResult">

+ 11 - 2
src/main/resources/mybatis/VRdemo/EconomyMapper.xml

@@ -32,9 +32,18 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="introduce != null  and introduce != ''"> and introduce like concat('%', #{introduce}, '%')</if>
             <if test="sort != null  and sort != ''"> and sort = #{sort}</if>
         </where>
-        ORDER BY sort
+        group by location, id, affiliation, title, link, introduce, sort, create_time, create_by, update_time, update_by
+        order by affiliation, location, sort
     </select>
-    
+
+    <select id="selectEconomyListByAffiliation" parameterType="String" resultMap="EconomyResult">
+        <include refid="selectEconomyVo"/>
+        where affiliation = #{affiliation}
+        group by location, id, affiliation, title, link, introduce, sort, create_time, create_by, update_time, update_by
+        order by location, sort
+    </select>
+
+
     <select id="selectEconomyById" parameterType="Long" resultMap="EconomyResult">
         <include refid="selectEconomyVo"/>
         where id = #{id}

+ 9 - 1
src/main/resources/mybatis/VRdemo/InstitutionMapper.xml

@@ -34,7 +34,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="introduce != null  and introduce != ''"> and introduce like concat('%', #{introduce}, '%')</if>
             <if test="sort != null  and sort != ''"> and sort = #{sort}</if>
         </where>
-        ORDER BY sort
+        group by location, id, affiliation, chinese_name, english_name, link, introduce, sort, create_time, create_by, update_time, update_by
+        order by affiliation, location, sort
+    </select>
+
+    <select id="selectInstitutionListByAffiliation" parameterType="String" resultMap="InstitutionResult">
+        <include refid="selectInstitutionVo"/>
+        where affiliation = #{affiliation}
+        group by location, id, affiliation, chinese_name, english_name, link, introduce, sort, create_time, create_by, update_time, update_by
+        order by location, sort
     </select>
     
     <select id="selectInstitutionById" parameterType="Long" resultMap="InstitutionResult">

+ 103 - 0
src/main/resources/mybatis/VRdemo/LibraryMenuMapper.xml

@@ -0,0 +1,103 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.project.VRdemo.mapper.LibraryMenuMapper">
+    
+    <resultMap type="LibraryMenu" id="LibraryMenuResult">
+        <result property="id"    column="id"    />
+        <result property="title"    column="title"    />
+        <result property="module"    column="module"    />
+        <result property="type"    column="type"    />
+        <result property="parentId"    column="parent_id"    />
+        <result property="orderNum"    column="order_num"    />
+        <result property="createTime"    column="create_time"    />
+        <result property="createBy"    column="create_by"    />
+        <result property="updateTime"    column="update_time"    />
+        <result property="updateBy"    column="update_by"    />
+    </resultMap>
+
+    <sql id="selectLibraryMenuVo">
+        select id, title, module, type, parent_id, order_num, create_time, create_by, update_time, update_by from vr_library_menu
+    </sql>
+
+    <select id="selectLibraryMenuList" parameterType="LibraryMenu" resultMap="LibraryMenuResult">
+        <include refid="selectLibraryMenuVo"/>
+        <where>  
+            <if test="title != null  and title != ''"> and title = #{title}</if>
+            <if test="parentId != null "> and parent_id = #{parentId}</if>
+            <if test="orderNum != null "> and order_num = #{orderNum}</if>
+        </where>
+        order by order_num
+    </select>
+
+    <select id="selectChildMenuListById" parameterType="LibraryMenu" resultMap="LibraryMenuResult">
+        <include refid="selectLibraryMenuVo"/>
+        where parent_id = #{id}
+        ORDER BY order_num
+    </select>
+    
+    <select id="selectLibraryMenuById" parameterType="Long" resultMap="LibraryMenuResult">
+        <include refid="selectLibraryMenuVo"/>
+        where id = #{id}
+    </select>
+
+    <select id="selectLibraryMenuByModule" parameterType="String" resultMap="LibraryMenuResult">
+        <include refid="selectLibraryMenuVo"/>
+        where module = #{module}
+        ORDER BY order_num
+    </select>
+        
+    <insert id="insertLibraryMenu" parameterType="LibraryMenu" useGeneratedKeys="true" keyProperty="id">
+        insert into vr_library_menu
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="title != null">title,</if>
+            <if test="module != null">module,</if>
+            <if test="parentId != null">parent_id,</if>
+            <if test="orderNum != null">order_num,</if>
+            <if test="type != null">type,</if>
+            <if test="createTime != null">create_time,</if>
+            <if test="createBy != null">create_by,</if>
+            <if test="updateTime != null">update_time,</if>
+            <if test="updateBy != null">update_by,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="title != null">#{title},</if>
+            <if test="module != null">#{module},</if>
+            <if test="parentId != null">#{parentId},</if>
+            <if test="orderNum != null">#{orderNum},</if>
+            <if test="type != null">#{type},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="createBy != null">#{createBy},</if>
+            <if test="updateTime != null">#{updateTime},</if>
+            <if test="updateBy != null">#{updateBy},</if>
+         </trim>
+    </insert>
+
+    <update id="updateLibraryMenu" parameterType="LibraryMenu">
+        update vr_library_menu
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="title != null">title = #{title},</if>
+            <if test="module != null">module = #{module},</if>
+            <if test="parentId != null">parent_id = #{parentId},</if>
+            <if test="orderNum != null">order_num = #{orderNum},</if>
+            <if test="type != null">type = #{type},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="createBy != null">create_by = #{createBy},</if>
+            <if test="updateTime != null">update_time = #{updateTime},</if>
+            <if test="updateBy != null">update_by = #{updateBy},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteLibraryMenuById" parameterType="Long">
+        delete from vr_library_menu where id = #{id}
+    </delete>
+
+    <delete id="deleteLibraryMenuByIds" parameterType="String">
+        delete from vr_library_menu where id in 
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+</mapper>

+ 10 - 1
src/main/resources/mybatis/VRdemo/PublicationMapper.xml

@@ -43,7 +43,16 @@
             <if test="introduce != null  and introduce != ''"> and introduce like concat('%', #{introduce}, '%')</if>
             <if test="sort != null  and sort != ''"> and sort = #{sort}</if>
         </where>
-        ORDER BY sort
+        where affiliation = #{affiliation}
+        group by location, id, affiliation, title, link, introduce, sort, create_time, create_by, update_time, update_by
+        order by affiliation, location, sort
+    </select>
+
+    <select id="selectPublicationListByAffiliation" parameterType="String" resultMap="PublicationResult">
+        <include refid="selectPublicationVo"/>
+        where affiliation = #{affiliation}
+        group by location, id, affiliation, title, link, introduce, sort, create_time, create_by, update_time, update_by
+        order by location, sort
     </select>
 
     <select id="selectPublicationById" parameterType="Long" resultMap="PublicationResult">

+ 6 - 0
src/main/resources/mybatis/VRdemo/RegionDevelopMapper.xml

@@ -30,6 +30,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="path != null  and path != ''"> and path like concat('%', #{path}, '%')</if>
             <if test="count != null and count != '' "> and count = #{count}</if>
         </where>
+        ORDER BY type, sort
+    </select>
+
+    <select id="selectRegionDevelopListByType" parameterType="String" resultMap="RegionDevelopResult">
+        <include refid="selectRegionDevelopVo"/>
+        WHERE type = #{type}
         ORDER BY sort
     </select>