package bus.controller.biz;

import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageSerializable;
import bus.model.dto.BTestDto;
import bus.model.dto.page.BTestPageDto;
import bus.model.vo.BTestVo;
import bus.service.BTestService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import com.qzwisdom.qzframework.core.tool.base.controller.BaseController;



/**
 * @Program: bus
 * @Description: 描述
 * @Author: bus
 * @Date: 2025-02-24 14:39:33
 **/
@Slf4j
@CrossOrigin
@RestController
@Api(tags = "bTest接口")
@RequestMapping(value="/bTest")
public class BTestController implements BaseController {

    @Autowired
    private BTestService bTestService;



    /**
     * 详情
     * @param id
     * @return
     */
    @ApiOperation("详情")
    @GetMapping(value = "getDetailById")
    public BTestVo getDetailById(@RequestParam String id){
        return doSingle(bTestService.getDetailById(id),BTestVo::new);
    }

	/**
     * 保存
     * @param dto
     * @return
     */
    @ApiOperation("保存")
    @PostMapping(value = "save")
    public String save(@RequestBody BTestDto dto){
		bTestService.save(dto);
        return "保存成功";
    }

    /**
    * 列表
    * @param dto
    * @return
    */
    @ApiOperation("列表")
    @PostMapping(value = "list")
    public PageSerializable<BTestVo> list(@RequestBody BTestPageDto dto){
       PageHelper.startPage(dto.getPageNum(),dto.getPageSize());
       return new PageSerializable<>(bTestService.list(dto));
    }

	/**
     * 修改
     * @param dto
     * @return
     */
    @ApiOperation("修改")
    @PostMapping(value = "update")
    public String update(@RequestBody BTestDto dto){
		bTestService.update(dto);
        return "修改成功";
    }

	/**
     * 删除
     * @param id
     * @return
     */
    @ApiOperation("删除")
    @GetMapping(value = "deleteById")
    public String deleteById(@RequestParam String id){
		bTestService.delete(id);
        return "删除成功";
    }

}
