From 587b438f50abb725f3dee63eaf6b586c09085f54 Mon Sep 17 00:00:00 2001
From: dengzedong <dengzedong@email>
Date: 星期四, 26 九月 2024 09:59:14 +0800
Subject: [PATCH] bug + 模型方法参数排序

---
 iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/controller/admin/MmPredictItemController.java |  104 ++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 69 insertions(+), 35 deletions(-)

diff --git a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/controller/admin/MmPredictItemController.java b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/controller/admin/MmPredictItemController.java
index 1c46986..267f2c0 100644
--- a/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/controller/admin/MmPredictItemController.java
+++ b/iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mcs/pre/controller/admin/MmPredictItemController.java
@@ -1,12 +1,23 @@
 package com.iailab.module.model.mcs.pre.controller.admin;
 
+import com.baomidou.dynamic.datasource.annotation.DSTransactional;
 import com.iailab.framework.common.pojo.CommonResult;
 import com.iailab.framework.common.pojo.PageResult;
+import com.iailab.framework.common.util.object.BeanUtils;
 import com.iailab.module.model.mcs.pre.dto.MmPredictItemDTO;
+import com.iailab.module.model.mcs.pre.entity.MmItemOutputEntity;
+import com.iailab.module.model.mcs.pre.entity.MmItemTypeEntity;
+import com.iailab.module.model.mcs.pre.entity.MmPredictItemEntity;
+import com.iailab.module.model.mcs.pre.service.MmItemOutputService;
+import com.iailab.module.model.mcs.pre.service.MmItemTypeService;
 import com.iailab.module.model.mcs.pre.service.MmPredictItemService;
+import com.iailab.module.model.mcs.pre.service.MmResultTableService;
 import com.iailab.module.model.mcs.pre.vo.CountItemtypeVO;
+import com.iailab.module.model.mcs.pre.vo.MmPredictItemPageReqVO;
 import com.iailab.module.model.mcs.pre.vo.MmPredictItemRespVO;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 
@@ -14,7 +25,6 @@
 import java.util.List;
 import java.util.Map;
 
-import static com.iailab.framework.common.pojo.CommonResult.error;
 import static com.iailab.framework.common.pojo.CommonResult.success;
 
 /**
@@ -22,65 +32,89 @@
  * @date 2021年04月26日 14:42
  */
 @RestController
-@RequestMapping("/pre/predict-item")
+@RequestMapping("/model/pre/predict-item")
 public class MmPredictItemController {
 
     @Autowired
     private MmPredictItemService mmPredictItemService;
 
+    @Autowired
+    private MmItemTypeService mmItemTypeService;
+
+    @Autowired
+    private MmItemOutputService mmItemOutputService;
+
+    @Autowired
+    private MmResultTableService mmResultTableService;
+
     /**
      * 预测项列表
      */
     @GetMapping("/page")
-    public CommonResult<PageResult<MmPredictItemRespVO>> page(@RequestParam Map<String, Object> params) {
-        PageResult<MmPredictItemRespVO> page = mmPredictItemService.getPageList(params);
-        return success(page);
+    @PreAuthorize("@ss.hasPermission('model:pre-item:query')")
+    public CommonResult<PageResult<MmPredictItemRespVO>> page(@Validated MmPredictItemPageReqVO reqVO) {
+        PageResult<MmPredictItemEntity> page = mmPredictItemService.queryPage(reqVO);
+        PageResult<MmPredictItemRespVO> result = BeanUtils.toBean(page, MmPredictItemRespVO.class);
+        for (MmPredictItemRespVO item : result.getList()){
+
+            MmItemTypeEntity mmItemTypeEntity = mmItemTypeService.info(item.getItemtypeid());
+            item.setItemtypename(mmItemTypeEntity== null ? "" :mmItemTypeEntity.getItemtypename());
+
+            MmItemOutputEntity mmItemOutputEntity = mmItemOutputService.getByItemid(item.getId());
+            item.setTagname(mmItemOutputEntity== null ? "" :mmItemOutputEntity.getTagname());
+            item.setResulttableid(mmItemOutputEntity== null ? "" :mmItemOutputEntity.getResulttableid());
+            item.setTablename(item == null ? "" : mmResultTableService.info(item.getResulttableid()).getTablename());
+        }
+        return success(result);
+    }
+
+    @GetMapping("/list")
+    public CommonResult<List<MmPredictItemEntity>> list() {
+        List<MmPredictItemEntity> list = mmPredictItemService.list();
+
+        return success(list);
     }
 
     /**
      * 预测项信息
      */
-    @GetMapping("/info/{id}")
-    public CommonResult<MmPredictItemDTO> info(@PathVariable("id") String id, @RequestParam Map<String, Object> params){
-        MmPredictItemDTO predictItem = mmPredictItemService.getDetailById(id, params);
+    @GetMapping("/get/{id}")
+    @PreAuthorize("@ss.hasPermission('model:pre-item:query')")
+    public CommonResult<MmPredictItemDTO> info(@PathVariable("id") String id){
+        MmPredictItemDTO predictItem = mmPredictItemService.info(id);
         return success(predictItem);
     }
 
     /**
      * 保存预测项
      */
-    @PostMapping
+    @PostMapping("/create")
+    @PreAuthorize("@ss.hasPermission('model:pre-item:create')")
+    @DSTransactional(rollbackFor= Exception.class)
     public CommonResult<Boolean> save(@RequestBody MmPredictItemDTO mmPredictItemDto){
-        int count = mmPredictItemService.check(mmPredictItemDto.getMmPredictItem());
-        if (count > 0) {
-            return error(999, "名称或编号重复");
-        }
-        mmPredictItemService.savePredictItem(mmPredictItemDto);
+        mmPredictItemService.add(mmPredictItemDto);
         return success(true);
     }
 
     /**
      * 修改预测项
      */
-    @PutMapping
-    public CommonResult<Boolean> update(@RequestBody MmPredictItemDTO mmPredictItemDto){
-        int count = mmPredictItemService.check(mmPredictItemDto.getMmPredictItem());
-        if (count > 0) {
-            return error(999, "名称或编号重复");
-        }
-        mmPredictItemService.update(mmPredictItemDto);
+    @PutMapping("/update")
+    @PreAuthorize("@ss.hasPermission('model:pre-item:update')")
+    @DSTransactional(rollbackFor= Exception.class)
+    public CommonResult<Boolean> update(@RequestBody MmPredictItemDTO mmPredictItemDTO){
+        mmPredictItemService.update(mmPredictItemDTO);
         return success(true);
     }
 
     /**
      * 删除预测项
      */
-    @DeleteMapping("{id}")
-    public CommonResult<Boolean> delete(@RequestBody String[] itemIds){
-        if (itemIds == null || itemIds.length == 0) {
-            return error(999, "参数不能为空");
-        }
-        mmPredictItemService.deleteBatch(itemIds);
+    @DeleteMapping("/delete")
+    @PreAuthorize("@ss.hasPermission('model:pre-item:delete')")
+    @DSTransactional(rollbackFor= Exception.class)
+    public CommonResult<Boolean> delete(@RequestParam("id") String id) {
+        mmPredictItemService.deleteBatch(new String[]{id});
         return success(true);
     }
 
@@ -93,14 +127,14 @@
         return success(list);
     }
 
-    /**
-     * 数量
-     */
-    @GetMapping("/count")
-    public CommonResult<Long> count() {
-        Long count = mmPredictItemService.count();
-        return success(count);
-    }
+//    /**
+//     * 数量
+//     */
+//    @GetMapping("/count")
+//    public CommonResult<Long> count() {
+//        Long count = mmPredictItemService.count();
+//        return success(count);
+//    }
 
     /**
      * 上传模型

--
Gitblit v1.9.3