package com.monkeylessey.controller;
|
|
import com.monkeylessey.domain.form.SessionForm;
|
import com.monkeylessey.domain.query.SessionQuery;
|
import com.monkeylessey.group.Update;
|
import com.monkeylessey.group.Add;
|
import com.monkeylessey.service.SessionService;
|
import org.springframework.validation.annotation.Validated;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
import lombok.RequiredArgsConstructor;
|
import java.util.List;
|
import javax.validation.constraints.NotEmpty;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import com.monkeylessey.response.Result;
|
import org.springframework.web.bind.annotation.*;
|
|
/**
|
* chat对话 前端控制器
|
*
|
* @author 向培
|
* @since 2025-04-18
|
*/
|
@Validated
|
@RequiredArgsConstructor
|
@Api(value = "会话管理", tags = "会话管理")
|
@RestController
|
@RequestMapping("/session")
|
public class SessionController {
|
|
private final SessionService sessionService;
|
|
@PostMapping
|
@ApiOperation(value = "添加", notes = "添加")
|
// @PreAuthorize("hasAuthority('session:add')")
|
public Result add(@RequestBody @Validated(Add.class) SessionForm form) {
|
return sessionService.add(form);
|
}
|
|
@PutMapping
|
@ApiOperation(value = "修改", notes = "修改")
|
@PreAuthorize("hasAuthority('session:edit')")
|
public Result update(@RequestBody @Validated(Update.class) SessionForm form) {
|
return sessionService.update(form);
|
}
|
|
@DeleteMapping("/{id}")
|
@ApiOperation(value = "ID删除", notes = "ID删除")
|
@PreAuthorize("hasAuthority('session:del')")
|
public Result removeById(@PathVariable("id") String id) {
|
return sessionService.removeById(id);
|
}
|
|
@DeleteMapping("/batch")
|
@ApiOperation(value = "批量删除", notes = "批量删除")
|
@PreAuthorize("hasAuthority('session:del:batch')")
|
public Result remove(@RequestBody @NotEmpty(message = "请选择数据") List<String> ids) {
|
return sessionService.remove(ids);
|
}
|
|
@GetMapping("/page")
|
@ApiOperation(value = "分页", notes = "分页")
|
@PreAuthorize("hasAuthority('session:page')")
|
public Result page(SessionQuery query) {
|
return sessionService.page(query);
|
}
|
|
@GetMapping("/{id}")
|
@ApiOperation(value = "详情", notes = "详情")
|
// @PreAuthorize("hasAuthority('session:detail')")
|
public Result detail(@PathVariable("id") Integer id) {
|
return sessionService.detail(id);
|
}
|
|
@GetMapping("/list")
|
@PreAuthorize("hasAuthority('session:list')")
|
@ApiOperation(value = "列表", notes = "列表")
|
public Result list() {
|
return sessionService.all();
|
}
|
|
@GetMapping("/client/list")
|
// @PreAuthorize("hasAuthority('session:client:list')")
|
@ApiOperation(value = "客户端会话列表", notes = "客户端会话列表")
|
public Result clientList() {
|
return sessionService.clientList();
|
}
|
}
|