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;
|
|
import java.util.ArrayList;
|
import java.util.List;
|
import java.util.Map;
|
|
import static com.iailab.framework.common.pojo.CommonResult.success;
|
|
/**
|
* @author PanZhibao
|
* @date 2021年04月26日 14:42
|
*/
|
@RestController
|
@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")
|
@PreAuthorize("@ss.hasPermission('model:pre-predict: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("/get/{id}")
|
@PreAuthorize("@ss.hasPermission('model:pre-predict:query')")
|
public CommonResult<MmPredictItemDTO> info(@PathVariable("id") String id){
|
MmPredictItemDTO predictItem = mmPredictItemService.info(id);
|
return success(predictItem);
|
}
|
|
/**
|
* 保存预测项
|
*/
|
@PostMapping("/create")
|
@PreAuthorize("@ss.hasPermission('model:pre-predict:create')")
|
@DSTransactional(rollbackFor= Exception.class)
|
public CommonResult<Boolean> save(@RequestBody MmPredictItemDTO mmPredictItemDto){
|
mmPredictItemService.add(mmPredictItemDto);
|
return success(true);
|
}
|
|
/**
|
* 修改预测项
|
*/
|
@PutMapping("/update")
|
@PreAuthorize("@ss.hasPermission('model:pre-predict:update')")
|
@DSTransactional(rollbackFor= Exception.class)
|
public CommonResult<Boolean> update(@RequestBody MmPredictItemDTO mmPredictItemDTO){
|
mmPredictItemService.update(mmPredictItemDTO);
|
return success(true);
|
}
|
|
/**
|
* 删除预测项
|
*/
|
@DeleteMapping("/delete")
|
@PreAuthorize("@ss.hasPermission('model:pre-predict:delete')")
|
@DSTransactional(rollbackFor= Exception.class)
|
public CommonResult<Boolean> delete(@RequestParam("id") String id) {
|
mmPredictItemService.deleteBatch(new String[]{id});
|
return success(true);
|
}
|
|
/**
|
* 预测项列表
|
*/
|
@GetMapping("/count-itemtype")
|
public CommonResult<List<CountItemtypeVO>> countItemtype(@RequestParam Map<String, Object> params){
|
List<CountItemtypeVO> list = new ArrayList<>();
|
return success(list);
|
}
|
|
// /**
|
// * 数量
|
// */
|
// @GetMapping("/count")
|
// public CommonResult<Long> count() {
|
// Long count = mmPredictItemService.count();
|
// return success(count);
|
// }
|
|
/**
|
* 上传模型
|
*/
|
@PostMapping("/uploadModel")
|
public CommonResult<Boolean> uploadModel(@RequestParam("file") MultipartFile file) throws Exception {
|
|
return success(true);
|
}
|
}
|