ChatbotController.java 3.8 KB
Newer Older
1 2 3 4 5 6 7
package com.kwan.springbootkwan.controller;


import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.kwan.springbootkwan.entity.Chatbot;
import com.kwan.springbootkwan.entity.Result;
8
import com.kwan.springbootkwan.entity.dto.ChatbotDTO;
9
import com.kwan.springbootkwan.service.ChatbotService;
10
import org.apache.commons.lang3.StringUtils;
11
import org.springframework.cache.annotation.Cacheable;
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

import javax.annotation.Resource;
import java.io.Serializable;
import java.util.Comparator;
import java.util.List;
import java.util.stream.Collectors;


/**
 * (Chatbot)表控制层
 *
 * @author : qinyingjie
 * @version : 2.2.0
 * @date : 2023/7/11 18:04
 */
@RestController
@RequestMapping("chatbot")
public class ChatbotController {
    /**
     * 服务对象
     */
    @Resource
    private ChatbotService chatbotService;

    /**
     * 获取所有数据
     *
     * @return
     */
    @GetMapping
    public Result selectAll() {

        List<Chatbot> list = this.chatbotService.list();
        list = list.stream().sorted(Comparator.comparing(Chatbot::getId).reversed()).collect(Collectors.toList());
        return Result.ok(list);
    }

58

59 60 61 62 63
    /**
     * 分页查询所有数据
     *
     * @return 所有数据
     */
64
    @Cacheable("chatbot-cache")
65
    @GetMapping("/page")
66 67 68
    public Result selectAll(@RequestParam Integer page
            , @RequestParam Integer pageSize
            , @RequestParam String question) {
69 70 71
        Page<Chatbot> pageParm = new Page<>();
        pageParm.setCurrent(page);
        pageParm.setSize(pageSize);
72
        QueryWrapper<Chatbot> wrapper = new QueryWrapper<>();
73 74
        wrapper.orderByDesc("id");
        wrapper.eq("is_delete", 0);
75 76 77
        if (StringUtils.isNotEmpty(question)) {
            wrapper.like("question", question);
        }
78
        return Result.ok(ChatbotDTO.Converter.INSTANCE.from(this.chatbotService.page(pageParm, wrapper)));
79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123
    }

    /**
     * 通过主键查询单条数据
     *
     * @param id 主键
     * @return 单条数据
     */
    @GetMapping("{id}")
    public Result selectOne(@PathVariable Serializable id) {
        return Result.ok(this.chatbotService.getById(id));
    }

    /**
     * 新增数据
     *
     * @param chatbot 实体对象
     * @return 新增结果
     */
    @PostMapping
    public Result insert(@RequestBody Chatbot chatbot) {
        return Result.ok(this.chatbotService.save(chatbot));
    }

    /**
     * 修改数据
     *
     * @param chatbot 实体对象
     * @return 修改结果
     */
    @PutMapping
    public Result update(@RequestBody Chatbot chatbot) {
        return Result.ok(this.chatbotService.updateById(chatbot));
    }

    /**
     * 删除数据
     *
     * @param idList 主键结合
     * @return 删除结果
     */
    @DeleteMapping
    public Result delete(@RequestParam("idList") List<Long> idList) {
        return Result.ok(this.chatbotService.removeByIds(idList));
    }
124 125 126 127 128 129 130 131 132

    @GetMapping("/delete")
    public Result delete(@RequestParam("id") Integer id) {
        Chatbot chatbot = new Chatbot();
        chatbot.setIsDelete(1);
        QueryWrapper<Chatbot> wrapper = new QueryWrapper<>();
        wrapper.eq("id", id);
        return Result.ok(chatbotService.update(chatbot, wrapper));
    }
133 134
}