package ink.wgink.module.map.service.grid;

import ink.wgink.module.map.pojo.dtos.grid.GridUserDTO;
import ink.wgink.pojo.ListPage;
import ink.wgink.pojo.result.SuccessResultList;
import ink.wgink.pojo.vos.IdsVO;

import java.util.List;
import java.util.Map;

/**
 * @ClassName: IGridUserService
 * @Description: 网格用户
 * @Author: wanggeng
 * @Date: 2021/10/20 5:43 下午
 * @Version: 1.0
 */
public interface IGridUserService {

    /**
     * 新增我的网格
     *
     * @param token
     * @param gridId
     */
    void saveOfMine(String token, String gridId);

    /**
     * 删除网格用户
     *
     * @param gridId
     * @param userIds
     */
    void delete(String gridId, List<String> userIds);

    /**
     * 删除我的网格
     *
     * @param token
     * @param gridId
     */
    void deleteOfMine(String token, String gridId);

    /**
     * 修改网格用户
     *
     * @param gridId
     * @param idsVO
     */
    void update(String gridId, IdsVO idsVO);

    /**
     * 网格用户ID列表
     *
     * @param gridId
     * @param params
     * @return
     */
    List<String> listUserId(String gridId, Map<String, Object> params);

    /**
     * 网格用户列表
     *
     * @param gridId
     * @param params
     * @return
     */
    List<GridUserDTO> list(String gridId, Map<String, Object> params);

    /**
     * 网格用户分页列表
     *
     * @param gridId
     * @param page
     * @return
     */
    SuccessResultList<List<GridUserDTO>> listPage(String gridId, ListPage page);

}
