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.entity.DmModuleEntity; import com.iailab.module.model.mcs.pre.entity.MmItemTypeEntity; import com.iailab.module.model.mcs.pre.service.MmItemTypeService; import com.iailab.module.model.mcs.pre.vo.MmItemTypePageReqVO; import com.iailab.module.model.mcs.pre.vo.MmItemTypeRespVO; 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 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; /** * @author PanZhibao * @date 2021å¹´04月22æ—¥ 9:57 */ @RestController @RequestMapping("/model/pre/item-type") public class MmItemTypeController { @Autowired private MmItemTypeService mmItemTypeService; /** * 预测项类型列表 */ @GetMapping("/page") @PreAuthorize("@ss.hasPermission('model:pre-type:query')") public CommonResult<PageResult<MmItemTypeRespVO>> page(@Validated MmItemTypePageReqVO reqVO) { PageResult<MmItemTypeEntity> page = mmItemTypeService.page(reqVO); return success(BeanUtils.toBean(page, MmItemTypeRespVO.class)); } @GetMapping("/list") @PreAuthorize("@ss.hasPermission('model:pre-type:query')") public CommonResult<List<MmItemTypeEntity>> list(@RequestParam Map<String, Object> params) { List<MmItemTypeEntity> list = mmItemTypeService.list(params); return success(list); } /** * é¢„æµ‹é¡¹ç±»åž‹ä¿¡æ¯ */ @GetMapping("/get/{id}") @PreAuthorize("@ss.hasPermission('model:pre-type:query')") public CommonResult<MmItemTypeEntity> info(@PathVariable("id") String id) { MmItemTypeEntity itemType = mmItemTypeService.info(id); return success(itemType); } /** * ä¿å˜é¢„测项类型 */ @PostMapping("/create") @PreAuthorize("@ss.hasPermission('model:pre-type:create')") @DSTransactional(rollbackFor= Exception.class) public CommonResult<Boolean> save(@RequestBody MmItemTypeEntity itemType) { int count = mmItemTypeService.check(itemType); if (count > 0) { return error(999,"å称é‡å¤"); } mmItemTypeService.saveItemType(itemType); return success(true); } /** * 修改预测项类型 */ @PutMapping("/update") @PreAuthorize("@ss.hasPermission('model:pre-type:update')") @DSTransactional(rollbackFor= Exception.class) public CommonResult<Boolean> update(@RequestBody MmItemTypeEntity itemType) { int count = mmItemTypeService.check(itemType); if (count > 0) { return error(999,"å称é‡å¤"); } mmItemTypeService.update(itemType); return success(true); } /** * åˆ é™¤é¢„æµ‹é¡¹ç±»åž‹ */ @DeleteMapping("/delete") @PreAuthorize("@ss.hasPermission('model:pre-type:delete')") @DSTransactional(rollbackFor= Exception.class) public CommonResult<Boolean> delete(@RequestParam("id") String id) { mmItemTypeService.deleteBatch(new String[]{id}); return success(true); } }