package com.ruoyi.web.service;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.web.domain.dto.VillageService.VillageServiceAddRequest;
import com.ruoyi.web.domain.dto.VillageService.VillageServiceEditRequest;
import com.ruoyi.web.domain.dto.VillageService.VillageServiceQueryRequest;
import com.ruoyi.web.domain.entity.VillageService;
import com.ruoyi.web.domain.vo.VillageServiceVO;


/**
 *
 */
public interface VillageServiceService extends IService<VillageService> {

    Integer addVillageService(VillageServiceAddRequest villageServiceAddRequest);

    boolean deleteVillageService(String ids);

    void editVillageService(VillageServiceEditRequest villageServiceEditRequest);

    /**
     * 发布
     *
     * @param id
     * @return
     */
    boolean publishVillageService(int id);

    /**
     * 下架
     *
     * @param id
     * @return
     */
    boolean removeVillageService(int id);

    /**
     * 根据id查询
     *
     * @param id
     * @return
     */
    VillageServiceVO getVillageServiceById(int id);

    VillageServiceVO getVillageServiceVO(VillageService villageService);

    /**
     * 分页获取列表
     *
     * @param villageServiceQueryRequest
     * @return
     */
    Page<VillageServiceVO> getListVillageServiceByPage(VillageServiceQueryRequest villageServiceQueryRequest);


    /**
     * 获取查询条件
     *
     * @param villageServiceQueryRequest
     * @return
     */
    QueryWrapper<VillageService> getQueryWrapper(VillageServiceQueryRequest villageServiceQueryRequest);

}
