package com.younike.system.service;

import java.util.List;
import com.younike.system.domain.GoodsServer;
import com.younike.system.domain.vo.GoodsServerResultVo;
import com.younike.system.domain.vo.GoodsServerVO;

/**
 * 商品服务人员信息Service接口
 *
 * @author elev
 * @date 2022-01-12
 */
public interface IGoodsServerService {

    /**
     * 根据服务人员查询服务列表
     * @param serverId
     * @return
     */
    List<GoodsServerResultVo> serverGoodsList(Long serverId);

    /**
     * 查询商品服务人员信息
     * 
     * @param goodsId 商品服务人员信息主键
     * @return 商品服务人员信息
     */
    GoodsServer selectGoodsServerByGoodsId(Long goodsId);

    /**
     * 查询商品服务人员信息列表
     * 
     * @param goodsServer 商品服务人员信息
     * @return 商品服务人员信息集合
     */
    List<GoodsServer> selectGoodsServerList(GoodsServer goodsServer);

    /**
     * 新增商品服务人员信息
     * 
     * @param goodsServer 商品服务人员信息
     * @return 结果
     */
    int insertGoodsServer(GoodsServer goodsServer);

    /**
     * 修改商品服务人员信息
     * 
     * @param goodsServer 商品服务人员信息
     * @return 结果
     */
    int updateGoodsServer(GoodsServer goodsServer);

    /**
     * 批量删除商品服务人员信息
     * 
     * @param goodsIds 需要删除的商品服务人员信息主键集合
     * @return 结果
     */
    int deleteGoodsServerByGoodsIds(Long[] goodsIds);

    /**
     * 删除商品服务人员信息信息
     * 
     * @param goodsId 商品服务人员信息主键
     * @return 结果
     */
    int deleteGoodsServerByGoodsId(Long goodsId);

    void removeGoodsServerByGoodsId(Long goodsId);

    void insertBatch(List<GoodsServer> goodsServerList);

    List<GoodsServerVO> goodsServerList(List<Long> goodsIds);

    void changeGoodsServers(Long goodsId, List<GoodsServerVO> serverUserList);
}
