package com.estate.expert.admin.controller.admin.standard;
|
|
import com.estate.expert.admin.domain.standard.problem.ProblemDto;
|
import com.estate.expert.admin.domain.user.User;
|
import com.estate.expert.admin.domain.common.request.BatchReq;
|
import com.estate.expert.admin.domain.common.request.ProblemPageRequest;
|
import com.estate.expert.admin.enums.BizResultCode;
|
import com.estate.expert.admin.service.ProblemService;
|
import com.estate.expert.common.domain.Session;
|
import com.estate.expert.common.rpc.Result;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiParam;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.validation.annotation.Validated;
|
import org.springframework.web.bind.annotation.*;
|
|
import javax.annotation.Resource;
|
|
/**
|
* 问题管理
|
**/
|
@CrossOrigin
|
@Slf4j
|
@Api(tags = "管理后台/问题管理")
|
@RequestMapping("/admin/problem")
|
@RestController
|
@Validated
|
public class ProblemController {
|
|
@Resource
|
private ProblemService problemService;
|
|
@ApiOperation(value = "问题列表")
|
@PostMapping("/list")
|
public Result list(@Validated @RequestBody ProblemPageRequest request) {
|
var res = problemService.list(request.getHierarchyId(),
|
request.getHierarchyPaths(),
|
request.getKeyword(),
|
request.getPageReq());
|
return Result.success(res);
|
}
|
|
@ApiOperation(value = "问题摘要(模型编辑)")
|
@PostMapping("/listAbstracts")
|
public Result listAbstracts(@Validated @RequestBody ProblemPageRequest request) {
|
var res = problemService.listAbstracts(request.getHierarchyId(),
|
request.getHierarchyPaths(),
|
request.getKeyword(),
|
request.getPageReq());
|
return Result.success(res);
|
}
|
|
@ApiOperation(value = "添加问题")
|
@PostMapping("/add")
|
public Result add(@ApiParam(hidden = true) Session session,
|
@Validated @RequestBody ProblemDto problemDto) {
|
problemService.add((User) session.getUser(), problemDto);
|
return Result.success();
|
}
|
|
@ApiOperation(value = "问题详情")
|
@GetMapping("/detail")
|
public Result detail(@RequestParam Integer id) {
|
var res = problemService.get(id);
|
BizResultCode.ENTITY_NOT_FOUND.check(res == null);
|
ProblemDto dto = problemService.toDto(res);
|
return Result.success(dto);
|
}
|
|
@ApiOperation(value = "编辑问题")
|
@PostMapping("/edit")
|
public Result edit(@Validated @RequestBody ProblemDto problemDto) {
|
problemService.edit(problemDto);
|
return Result.success();
|
}
|
|
@ApiOperation(value = "批量删除问题")
|
@PostMapping("/batch/del")
|
public Result batchDel(@Validated @RequestBody BatchReq request) {
|
problemService.deleteAllById(request.getIds());
|
return Result.success();
|
}
|
|
}
|