package com.ruoyi.service.impl;

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.domain.Book;
import com.ruoyi.service.BookService;
import com.ruoyi.mapper.BookMapper;
import org.apache.skywalking.apm.toolkit.trace.Tag;
import org.apache.skywalking.apm.toolkit.trace.Tags;
import org.apache.skywalking.apm.toolkit.trace.Trace;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
* @author wangfei
* @description 针对表【t_book(书籍)】的数据库操作Service实现
* @createDate 2023-12-05 14:50:11
*/
@Service
public class BookServiceImpl extends ServiceImpl<BookMapper, Book> implements BookService{

    @Autowired
    private BookMapper bookMapper;

    @Trace
    @Tags({@Tag(key = "param", value = "arg[0]"), @Tag(key = "result", value = "returnedObj")})
    @Override
    public List<Book> selectBookList(String name) {
        return bookMapper.selectBookList(name);
    }

    @Override
    public List<Book> selectBookListException(String name) {
        if(1 == 1) {
            throw new ServiceException("测试异常处理");
        }
        return null;
    }
}