Prechádzať zdrojové kódy

数据管理树列表更新

ZhuDeKang 6 mesiacov pred
rodič
commit
4819f1f757

+ 101 - 0
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/controller/MdDataCateController.java

@@ -0,0 +1,101 @@
+package com.ruoyi.interfaces.controller;
+
+import java.util.List;
+import javax.servlet.http.HttpServletResponse;
+
+import com.ruoyi.interfaces.domain.MdDataCate;
+import com.ruoyi.interfaces.service.IMdDataCateService;
+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.common.annotation.Log;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+
+/**
+ * 数据项分类管理Controller
+ *
+ * @author 朱得糠
+ * @date 2025-07-25
+ */
+@RestController
+@RequestMapping("/data/cate")
+public class MdDataCateController extends BaseController {
+    @Autowired
+    private IMdDataCateService mdDataCateService;
+
+    /**
+     * 查询数据项分类管理列表
+     */
+    @GetMapping("/list")
+    public AjaxResult list(MdDataCate mdDataCate) {
+        List<MdDataCate> list = mdDataCateService.selectMdDataCateList(mdDataCate);
+        return success(list);
+    }
+
+    /**
+     * 导出数据项分类管理列表
+     */
+    @Log(title = "数据项分类管理", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, MdDataCate mdDataCate) {
+        List<MdDataCate> list = mdDataCateService.selectMdDataCateList(mdDataCate);
+        ExcelUtil<MdDataCate> util = new ExcelUtil<MdDataCate>(MdDataCate.class);
+        util.exportExcel(response, list, "数据项分类管理数据");
+    }
+
+    /**
+     * 获取数据项分类管理详细信息
+     */
+    @GetMapping(value = "/{cateId}")
+    public AjaxResult getInfo(@PathVariable("cateId") String cateId) {
+        return success(mdDataCateService.selectMdDataCateByCateId(cateId));
+    }
+
+    /**
+     * 构建数据项树状列表
+     * @param mdDataCate
+     * @return
+     */
+    @GetMapping(value = "/treeselect")
+    public AjaxResult treeselect(MdDataCate mdDataCate) {
+        List<MdDataCate> mdDataCates = mdDataCateService.selectMdDataCateList(mdDataCate);
+        return success(mdDataCateService.buildDataTreeSelect(mdDataCates));
+    }
+
+    /**
+     * 新增数据项分类管理
+     */
+    @Log(title = "数据项分类管理", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody MdDataCate mdDataCate) {
+        return toAjax(mdDataCateService.insertMdDataCate(mdDataCate));
+    }
+
+    /**
+     * 修改数据项分类管理
+     */
+    @Log(title = "数据项分类管理", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody MdDataCate mdDataCate) {
+        return toAjax(mdDataCateService.updateMdDataCate(mdDataCate));
+    }
+
+    /**
+     * 删除数据项分类管理
+     */
+    @Log(title = "数据项分类管理", businessType = BusinessType.DELETE)
+    @DeleteMapping("/{cateIds}")
+    public AjaxResult remove(@PathVariable String[] cateIds) {
+        return toAjax(mdDataCateService.deleteMdDataCateByCateIds(cateIds));
+    }
+}

+ 2 - 1
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/controller/PtServiceController.java

@@ -91,7 +91,8 @@ public class PtServiceController extends BaseController {
      * @return
      */
     @GetMapping("/modelService")
-    public AjaxResult modelService(MdModelInfoVo par){
+    public AjaxResult modelService(MdModelInfo par){
+        startPage();
         return AjaxResult.success(ptServiceService.modelService(par));
     }
 

+ 144 - 0
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/domain/MdDataCate.java

@@ -0,0 +1,144 @@
+package com.ruoyi.interfaces.domain;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.common.core.domain.BaseEntity;
+import com.ruoyi.common.core.domain.entity.SysMenu;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.TreeEntity;
+
+/**
+ * 数据项分类管理对象 md_data_cate
+ *
+ * @author 朱得糠
+ * @date 2025-07-25
+ */
+public class MdDataCate extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 序号
+     */
+    private String cateId;
+
+    /**
+     * 父节点序号
+     */
+    @Excel(name = "父节点序号")
+    private String catePid;
+
+    /**
+     * 名称
+     */
+    @Excel(name = "名称")
+    private String itemName;
+
+    /**
+     * 排序
+     */
+    @Excel(name = "排序")
+    private Long itemNo;
+
+    /**
+     * 备注
+     */
+    @Excel(name = "备注")
+    private String itemNotes;
+
+    /**
+     * 编辑时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "编辑时间", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date modifyby;
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date createby;
+    /**
+     * 子菜单
+     */
+    private List<MdDataCate> children = new ArrayList<MdDataCate>();
+
+    public List<MdDataCate> getChildren() {
+        return children;
+    }
+
+    public void setChildren(List<MdDataCate> children) {
+        this.children = children;
+    }
+
+
+    public Date getCreateby() {
+        return createby;
+    }
+
+    public void setCreateby(Date createby) {
+        this.createby = createby;
+    }
+
+    public void setCateId(String cateId) {
+        this.cateId = cateId;
+    }
+
+    public String getCateId() {
+        return cateId;
+    }
+
+    public void setCatePid(String catePid) {
+        this.catePid = catePid;
+    }
+
+    public String getCatePid() {
+        return catePid;
+    }
+
+    public void setItemName(String itemName) {
+        this.itemName = itemName;
+    }
+
+    public String getItemName() {
+        return itemName;
+    }
+
+    public void setItemNo(Long itemNo) {
+        this.itemNo = itemNo;
+    }
+
+    public Long getItemNo() {
+        return itemNo;
+    }
+
+    public void setItemNotes(String itemNotes) {
+        this.itemNotes = itemNotes;
+    }
+
+    public String getItemNotes() {
+        return itemNotes;
+    }
+
+    public void setModifyby(Date modifyby) {
+        this.modifyby = modifyby;
+    }
+
+    public Date getModifyby() {
+        return modifyby;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
+                .append("cateId", getCateId())
+                .append("catePid", getCatePid())
+                .append("itemName", getItemName())
+                .append("itemNo", getItemNo())
+                .append("itemNotes", getItemNotes())
+                .append("createby", getCreateby())
+                .append("modifyby", getModifyby())
+                .toString();
+    }
+}

+ 4 - 0
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/domain/PtService.java

@@ -109,4 +109,8 @@ public class PtService implements Serializable {
     @TableField(exist = false)
     @ApiModelProperty("请求参数列表")
     private List<PtServiceParam> params;
+
+    public PtService(String mdid) {
+        this.mdid = mdid;
+    }
 }

+ 62 - 0
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/domain/TreeSelectString.java

@@ -0,0 +1,62 @@
+package com.ruoyi.interfaces.domain;
+
+import com.fasterxml.jackson.annotation.JsonInclude;
+import com.ruoyi.common.core.domain.TreeSelect;
+
+import java.io.Serializable;
+import java.util.List;
+import java.util.stream.Collectors;
+
+public class TreeSelectString  implements Serializable{
+    private static final long serialVersionUID = 1L;
+
+    /** 节点ID */
+    private String id;
+
+    /** 节点名称 */
+    private String label;
+
+    /** 子节点 */
+    @JsonInclude(JsonInclude.Include.NON_EMPTY)
+    private List<TreeSelectString> children;
+
+    public TreeSelectString(MdDataCate menu)
+    {
+        this.id = menu.getCateId();
+        this.label = menu.getItemName();
+        this.children = menu.getChildren().stream().map(TreeSelectString::new).collect(Collectors.toList());
+    }
+
+    public TreeSelectString(String id, String label, List<TreeSelectString> children) {
+        this.id = id;
+        this.label = label;
+        this.children = children;
+    }
+
+    public TreeSelectString() {
+    }
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getLabel() {
+        return label;
+    }
+
+    public void setLabel(String label) {
+        this.label = label;
+    }
+
+    public List<TreeSelectString> getChildren() {
+        return children;
+    }
+
+    public void setChildren(List<TreeSelectString> children) {
+        this.children = children;
+    }
+}

+ 36 - 1
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/domain/vo/MdModelInfoVo.java

@@ -21,7 +21,7 @@ public class MdModelInfoVo extends MdModelInfo {
         this.serviceList = serviceList;
     }
 
-    public MdModelInfoVo(){
+    public MdModelInfoVo() {
 
     }
 
@@ -38,4 +38,39 @@ public class MdModelInfoVo extends MdModelInfo {
     public MdModelInfoVo(List<PtService> serviceList) {
         this.serviceList = serviceList;
     }
+
+    public MdModelInfoVo(MdModelInfo modelInfo) {
+        super(modelInfo.getMdid(),
+                modelInfo.getName(),
+                modelInfo.getEnname(),
+                modelInfo.getCateid(),
+                modelInfo.getDevlang(),
+                modelInfo.getVersion(),
+                modelInfo.getIntro(),
+                modelInfo.getType(),
+                modelInfo.getTags(),
+                modelInfo.getAuthor(),
+                modelInfo.getIsPublic(),
+                modelInfo.getIsApproved(),
+                modelInfo.getStatus(),
+                modelInfo.getClassName(),
+                modelInfo.getMdUnit(),
+                modelInfo.getMdContact(),
+                modelInfo.getDeveloper(),
+                modelInfo.getMsgFlag(),
+                modelInfo.getMsgWebHook(),
+                modelInfo.getMdCPU(),
+                modelInfo.getMdGpu(),
+                modelInfo.getMdRunEnv(),
+                modelInfo.getMdRunCmd(),
+                modelInfo.getMdInOutName(),
+                modelInfo.getMdInOutNameEn(),
+                modelInfo.getMirrorImageEg(),
+                modelInfo.getMirrorImageUrl(),
+                modelInfo.getMirrorImageDesc(),
+                modelInfo.getModifyBy(),
+                modelInfo.getRegistrant()
+        );
+    }
+
 }

+ 65 - 0
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/mapper/MdDataCateMapper.java

@@ -0,0 +1,65 @@
+package com.ruoyi.interfaces.mapper;
+
+import com.ruoyi.common.annotation.DataSource;
+import com.ruoyi.common.enums.DataSourceType;
+import com.ruoyi.interfaces.domain.MdDataCate;
+
+import java.util.List;
+
+/**
+ * 数据项分类管理Mapper接口
+ * 
+ * @author 朱得糠
+ * @date 2025-07-25
+ */
+@DataSource(DataSourceType.SLAVE)
+public interface MdDataCateMapper 
+{
+    /**
+     * 查询数据项分类管理
+     * 
+     * @param cateId 数据项分类管理主键
+     * @return 数据项分类管理
+     */
+    public MdDataCate selectMdDataCateByCateId(String cateId);
+
+    /**
+     * 查询数据项分类管理列表
+     * 
+     * @param mdDataCate 数据项分类管理
+     * @return 数据项分类管理集合
+     */
+    public List<MdDataCate> selectMdDataCateList(MdDataCate mdDataCate);
+
+    /**
+     * 新增数据项分类管理
+     * 
+     * @param mdDataCate 数据项分类管理
+     * @return 结果
+     */
+    public int insertMdDataCate(MdDataCate mdDataCate);
+
+    /**
+     * 修改数据项分类管理
+     * 
+     * @param mdDataCate 数据项分类管理
+     * @return 结果
+     */
+    public int updateMdDataCate(MdDataCate mdDataCate);
+
+    /**
+     * 删除数据项分类管理
+     * 
+     * @param cateId 数据项分类管理主键
+     * @return 结果
+     */
+    public int deleteMdDataCateByCateId(String cateId);
+
+    /**
+     * 批量删除数据项分类管理
+     * 
+     * @param cateIds 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteMdDataCateByCateIds(String[] cateIds);
+}

+ 66 - 0
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/IMdDataCateService.java

@@ -0,0 +1,66 @@
+package com.ruoyi.interfaces.service;
+
+import com.ruoyi.common.core.domain.TreeSelect;
+import com.ruoyi.common.core.domain.entity.SysMenu;
+import com.ruoyi.interfaces.domain.MdDataCate;
+import com.ruoyi.interfaces.domain.TreeSelectString;
+
+import java.util.List;
+
+/**
+ * 数据项分类管理Service接口
+ * 
+ * @author 朱得糠
+ * @date 2025-07-25
+ */
+public interface IMdDataCateService 
+{
+    /**
+     * 查询数据项分类管理
+     * 
+     * @param cateId 数据项分类管理主键
+     * @return 数据项分类管理
+     */
+    public MdDataCate selectMdDataCateByCateId(String cateId);
+
+    /**
+     * 查询数据项分类管理列表
+     * 
+     * @param mdDataCate 数据项分类管理
+     * @return 数据项分类管理集合
+     */
+    public List<MdDataCate> selectMdDataCateList(MdDataCate mdDataCate);
+
+    /**
+     * 新增数据项分类管理
+     * 
+     * @param mdDataCate 数据项分类管理
+     * @return 结果
+     */
+    public int insertMdDataCate(MdDataCate mdDataCate);
+
+    /**
+     * 修改数据项分类管理
+     * 
+     * @param mdDataCate 数据项分类管理
+     * @return 结果
+     */
+    public int updateMdDataCate(MdDataCate mdDataCate);
+
+    /**
+     * 批量删除数据项分类管理
+     * 
+     * @param cateIds 需要删除的数据项分类管理主键集合
+     * @return 结果
+     */
+    public int deleteMdDataCateByCateIds(String[] cateIds);
+
+    /**
+     * 删除数据项分类管理信息
+     * 
+     * @param cateId 数据项分类管理主键
+     * @return 结果
+     */
+    public int deleteMdDataCateByCateId(String cateId);
+    public List<TreeSelectString> buildDataTreeSelect(List<MdDataCate> menus);
+}

+ 2 - 1
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/PtServiceService.java

@@ -1,6 +1,7 @@
 package com.ruoyi.interfaces.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.interfaces.domain.MdModelInfo;
 import com.ruoyi.interfaces.domain.PtService;
 import com.ruoyi.interfaces.domain.vo.MdModelInfoVo;
 
@@ -46,5 +47,5 @@ public interface PtServiceService extends IService<PtService> {
 
     PtService get(String srvId);
 
-    List<MdModelInfoVo> modelService(MdModelInfoVo par);
+    List<MdModelInfoVo> modelService(MdModelInfo par);
 }

+ 172 - 0
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/impl/MdDataCateServiceImpl.java

@@ -0,0 +1,172 @@
+package com.ruoyi.interfaces.service.impl;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+import java.util.stream.Collectors;
+
+import com.ruoyi.common.core.domain.TreeSelect;
+import com.ruoyi.common.core.domain.entity.SysMenu;
+import com.ruoyi.common.utils.DateUtils;
+import com.ruoyi.common.utils.uuid.IdUtils;
+import com.ruoyi.interfaces.domain.MdDataCate;
+import com.ruoyi.interfaces.domain.TreeSelectString;
+import com.ruoyi.interfaces.mapper.MdDataCateMapper;
+import com.ruoyi.interfaces.service.IMdDataCateService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+/**
+ * 数据项分类管理Service业务层处理
+ * 
+ * @author 朱得糠
+ * @date 2025-07-25
+ */
+@Service
+public class MdDataCateServiceImpl implements IMdDataCateService
+{
+    @Autowired
+    private MdDataCateMapper mdDataCateMapper;
+
+    /**
+     * 查询数据项分类管理
+     * 
+     * @param cateId 数据项分类管理主键
+     * @return 数据项分类管理
+     */
+    @Override
+    public MdDataCate selectMdDataCateByCateId(String cateId)
+    {
+        return mdDataCateMapper.selectMdDataCateByCateId(cateId);
+    }
+
+    /**
+     * 查询数据项分类管理列表
+     * 
+     * @param mdDataCate 数据项分类管理
+     * @return 数据项分类管理
+     */
+    @Override
+    public List<MdDataCate> selectMdDataCateList(MdDataCate mdDataCate)
+    {
+        return mdDataCateMapper.selectMdDataCateList(mdDataCate);
+    }
+
+    /**
+     * 新增数据项分类管理
+     * 
+     * @param mdDataCate 数据项分类管理
+     * @return 结果
+     */
+    @Override
+    public int insertMdDataCate(MdDataCate mdDataCate)
+    {
+        mdDataCate.setCateId(IdUtils.fastUUID());
+        mdDataCate.setCreateby(DateUtils.getNowDate());
+        return mdDataCateMapper.insertMdDataCate(mdDataCate);
+    }
+
+    /**
+     * 修改数据项分类管理
+     * 
+     * @param mdDataCate 数据项分类管理
+     * @return 结果
+     */
+    @Override
+    public int updateMdDataCate(MdDataCate mdDataCate)
+    {
+        mdDataCate.setModifyby(DateUtils.getNowDate());
+        return mdDataCateMapper.updateMdDataCate(mdDataCate);
+    }
+
+    /**
+     * 批量删除数据项分类管理
+     * 
+     * @param cateIds 需要删除的数据项分类管理主键
+     * @return 结果
+     */
+    @Override
+    public int deleteMdDataCateByCateIds(String[] cateIds)
+    {
+        return mdDataCateMapper.deleteMdDataCateByCateIds(cateIds);
+    }
+
+    /**
+     * 删除数据项分类管理信息
+     * 
+     * @param cateId 数据项分类管理主键
+     * @return 结果
+     */
+    @Override
+    public int deleteMdDataCateByCateId(String cateId)
+    {
+        return mdDataCateMapper.deleteMdDataCateByCateId(cateId);
+    }
+
+    @Override
+    public List<TreeSelectString> buildDataTreeSelect(List<MdDataCate> menus) {
+
+        List<MdDataCate> menuTrees = buildDataTree(menus);
+        List<TreeSelectString> collect = menuTrees.stream().map(TreeSelectString::new).collect(Collectors.toList());
+        return collect;
+    }
+
+    private List<MdDataCate> buildDataTree(List<MdDataCate> menus) {
+        List<MdDataCate> returnList = new ArrayList<MdDataCate>();
+        List<String> tempList = menus.stream().map(MdDataCate::getCateId).collect(Collectors.toList());
+        for (Iterator<MdDataCate> iterator = menus.iterator(); iterator.hasNext();)
+        {
+            MdDataCate menu = (MdDataCate) iterator.next();
+            // 如果是顶级节点, 遍历该父节点的所有子节点
+            if (!tempList.contains(menu.getCatePid()))
+            {
+                recursionFn(menus, menu);
+                returnList.add(menu);
+            }
+        }
+        if (returnList.isEmpty())
+        {
+            returnList = menus;
+        }
+        return returnList;
+    }
+    private void recursionFn(List<MdDataCate> list, MdDataCate t)
+    {
+        // 得到子节点列表
+        List<MdDataCate> childList = getChildList(list, t);
+        t.setChildren(childList);
+        for (MdDataCate tChild : childList)
+        {
+            if (hasChild(list, tChild))
+            {
+                recursionFn(list, tChild);
+            }
+        }
+    }
+    /**
+     * 得到子节点列表
+     */
+    private List<MdDataCate> getChildList(List<MdDataCate> list, MdDataCate t)
+    {
+        List<MdDataCate> tlist = new ArrayList<MdDataCate>();
+        Iterator<MdDataCate> it = list.iterator();
+        while (it.hasNext())
+        {
+            MdDataCate n = (MdDataCate) it.next();
+            if (n.getCatePid().equals(t.getCateId()))
+            {
+                tlist.add(n);
+            }
+        }
+        return tlist;
+    }
+
+    /**
+     * 判断是否有子节点
+     */
+    private boolean hasChild(List<MdDataCate> list, MdDataCate t)
+    {
+        return getChildList(list, t).size() > 0;
+    }
+
+}

+ 14 - 7
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/service/impl/PtServiceServiceImpl.java

@@ -7,20 +7,19 @@ import com.ruoyi.common.utils.JsonUtils;
 import com.ruoyi.common.utils.RedisOperator;
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.uuid.IdUtils;
+import com.ruoyi.interfaces.domain.MdModelInfo;
 import com.ruoyi.interfaces.domain.PtService;
 import com.ruoyi.interfaces.domain.vo.MdModelInfoVo;
 import com.ruoyi.interfaces.mapper.PtServiceMapper;
 import com.ruoyi.interfaces.mapper.PtServiceParamMapper;
+import com.ruoyi.interfaces.service.IMdModelInfoService;
 import com.ruoyi.interfaces.service.PtServiceService;
 import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
-import java.util.Date;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 /**
  * @author LinQiLong
@@ -32,6 +31,8 @@ public class PtServiceServiceImpl extends ServiceImpl<PtServiceMapper, PtService
     private final PtServiceMapper ptServiceMapper;
 
     private final RedisOperator redisOperator;
+    @Autowired
+    private IMdModelInfoService mdModelInfoService;
 
     @Autowired
     private PtServiceParamMapper ptServiceParamMapper;
@@ -119,9 +120,15 @@ public class PtServiceServiceImpl extends ServiceImpl<PtServiceMapper, PtService
      * @return
      */
     @Override
-    public List<MdModelInfoVo> modelService(MdModelInfoVo par) {
-
-        return ptServiceMapper.selectModelService(par);
+    public List<MdModelInfoVo> modelService(MdModelInfo par) {
+        List<MdModelInfo> mdModelInfos = mdModelInfoService.selectMdModelInfoList(par);
+        ArrayList<MdModelInfoVo> dataList = new ArrayList<>();
+        for (MdModelInfo mdModelInfo : mdModelInfos) {
+            MdModelInfoVo mdModelInfoVo = new MdModelInfoVo(mdModelInfo);
+            mdModelInfoVo.setServiceList(ptServiceMapper.selectAllColumns(new PtService(mdModelInfo.getMdid())));
+            dataList.add(mdModelInfoVo);
+        }
+        return dataList;
     }
 
 }

+ 83 - 0
ruoyi-api-patform/src/main/resources/mapper/interfaces/MdDataCateMapper.xml

@@ -0,0 +1,83 @@
+<?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.interfaces.mapper.MdDataCateMapper">
+
+    <resultMap type="com.ruoyi.interfaces.domain.MdDataCate" id="MdDataCateResult">
+        <result property="cateId"    column="CATE_ID"    />
+        <result property="catePid"    column="CATE_PID"    />
+        <result property="itemName"    column="ITEM_NAME"    />
+        <result property="itemNo"    column="ITEM_NO"    />
+        <result property="itemNotes"    column="ITEM_NOTES"    />
+        <result property="createby"    column="CREATEBY"    />
+        <result property="modifyby"    column="MODIFYBY"    />
+    </resultMap>
+
+    <sql id="selectMdDataCateVo">
+        select CATE_ID, CATE_PID,  ITEM_NAME, ITEM_NO, ITEM_NOTES, CREATEBY, MODIFYBY from md_data_cate
+    </sql>
+
+    <select id="selectMdDataCateList" parameterType="com.ruoyi.interfaces.domain.MdDataCate" resultMap="MdDataCateResult">
+        <include refid="selectMdDataCateVo"/>
+        <where>
+            <if test="catePid != null  and catePid != ''"> and CATE_PID = #{catePid}</if>
+            <if test="itemName != null  and itemName != ''"> and ITEM_NAME like concat('%', #{itemName}, '%')</if>
+            <if test="itemNo != null "> and ITEM_NO = #{itemNo}</if>
+            <if test="itemNotes != null  and itemNotes != ''"> and ITEM_NOTES = #{itemNotes}</if>
+            <if test="createby != null "> and CREATEBY = #{createby}</if>
+            <if test="modifyby != null "> and MODIFYBY = #{modifyby}</if>
+        </where>
+    </select>
+
+    <select id="selectMdDataCateByCateId" parameterType="String" resultMap="MdDataCateResult">
+        <include refid="selectMdDataCateVo"/>
+        where CATE_ID = #{cateId}
+    </select>
+
+    <insert id="insertMdDataCate" parameterType="com.ruoyi.interfaces.domain.MdDataCate">
+        insert into md_data_cate
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="cateId != null">CATE_ID,</if>
+            <if test="catePid != null and catePid != ''">CATE_PID,</if>
+            <if test="itemName != null">ITEM_NAME,</if>
+            <if test="itemNo != null">ITEM_NO,</if>
+            <if test="itemNotes != null">ITEM_NOTES,</if>
+            <if test="createby != null">CREATEBY,</if>
+            <if test="modifyby != null">MODIFYBY,</if>
+        </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="cateId != null">#{cateId},</if>
+            <if test="catePid != null and catePid != ''">#{catePid},</if>
+            <if test="itemName != null">#{itemName},</if>
+            <if test="itemNo != null">#{itemNo},</if>
+            <if test="itemNotes != null">#{itemNotes},</if>
+            <if test="createby != null">#{createby},</if>
+            <if test="modifyby != null">#{modifyby},</if>
+        </trim>
+    </insert>
+
+    <update id="updateMdDataCate" parameterType="com.ruoyi.interfaces.domain.MdDataCate">
+        update md_data_cate
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="catePid != null and catePid != ''">CATE_PID = #{catePid},</if>
+            <if test="itemName != null">ITEM_NAME = #{itemName},</if>
+            <if test="itemNo != null">ITEM_NO = #{itemNo},</if>
+            <if test="itemNotes != null">ITEM_NOTES = #{itemNotes},</if>
+            <if test="createby != null">CREATEBY = #{createby},</if>
+            <if test="modifyby != null">MODIFYBY = #{modifyby},</if>
+        </trim>
+        where CATE_ID = #{cateId}
+    </update>
+
+    <delete id="deleteMdDataCateByCateId" parameterType="String">
+        delete from md_data_cate where CATE_ID = #{cateId}
+    </delete>
+
+    <delete id="deleteMdDataCateByCateIds" parameterType="String">
+        delete from md_data_cate where CATE_ID in
+        <foreach item="cateId" collection="array" open="(" separator="," close=")">
+            #{cateId}
+        </foreach>
+    </delete>
+</mapper>