package com.ruoyi.cs.service.impl;

import java.util.List;

import com.ruoyi.common.utils.uuid.IdUtils;
import com.ruoyi.cs.domain.vo.CsClassVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.cs.mapper.CsClassMapper;
import com.ruoyi.cs.domain.CsClass;
import com.ruoyi.cs.service.ICsClassService;

/**
 * 分类类别Service业务层处理
 *
 * @author ruoyi
 * @date 2024-04-26
 */
@Service
public class CsClassServiceImpl implements ICsClassService
{
    @Autowired
    private CsClassMapper csClassMapper;

    /**
     * 查询分类类别
     *
     * @param classId 分类类别主键
     * @return 分类类别
     */
    @Override
    public CsClass selectCsClassByClassId(String classId)
    {
        return csClassMapper.selectCsClassByClassId(classId);
    }

    /**
     * 查询分类类别列表
     *
     * @param csClass 分类类别
     * @return 分类类别
     */
    @Override
    public List<CsClass> selectCsClassList(CsClass csClass)
    {
        return csClassMapper.selectCsClassList(csClass);
    }

    /**
     * 新增分类类别
     *
     * @param csClass 分类类别
     * @return 结果
     */
    @Override
    public int insertCsClass(CsClass csClass)
    {
        if (csClass.getClassId() == null) {
            csClass.setClassId(IdUtils.fastSimpleUUID());
        }
        return csClassMapper.insertCsClass(csClass);
    }

    /**
     * 修改分类类别
     *
     * @param csClass 分类类别
     * @return 结果
     */
    @Override
    public int updateCsClass(CsClass csClass)
    {
        return csClassMapper.updateCsClass(csClass);
    }

    /**
     * 批量删除分类类别
     *
     * @param classIds 需要删除的分类类别主键
     * @return 结果
     */
    @Override
    public int deleteCsClassByClassIds(String[] classIds)
    {
        return csClassMapper.deleteCsClassByClassIds(classIds);
    }

    /**
     * 删除分类类别信息
     *
     * @param classId 分类类别主键
     * @return 结果
     */
    @Override
    public int deleteCsClassByClassId(String classId)
    {
        return csClassMapper.deleteCsClassByClassId(classId);
    }

    /**
     * 查询分类类别列表By分类
     * @param classMark 分类类别
     * @return
     */
    @Override
    public List<CsClassVO> selectCsClassListByClassMark(String classMark) {
        return csClassMapper.selectCsClassVOList(classMark);
    }
}
