package com.cool.store.service;

import com.cool.store.request.OpenAreaRequest;
import com.cool.store.vo.OpenAreaTreeVO;
import com.cool.store.vo.OpenAreaVO;
import com.cool.store.vo.OpenProvinceVO;
import com.github.pagehelper.PageInfo;

import java.util.List;

/**
 * @Author suzhuhong
 * @Date 2023/6/13 22:11
 * @Version 1.0
 */
public interface OpenAreaService {


    /**
     * 根据关键字搜索
     * @param keyword
     * @return
     */
    List<OpenAreaTreeVO> queryByKeyword(String keyword,String areaStatus,Boolean flag);


    /**
     * 查询所有的开放区域 城市树
     * @param keyword
     * @param flag
     * @return
     */
    List<OpenAreaTreeVO> queryAllOpenAreaByKeyword(String keyword,Boolean applyFlag,Boolean flag);


    List<OpenAreaTreeVO> searchOpenArea(String keyword,Boolean applyFlag,Boolean flag);


    /**
     * 查询字列表
     * @param type
     * @param parentId
     * @return
     */
    List<OpenAreaVO> getChildrenList(String type, Long parentId);

    /**
     *
     * @param userId
     * @param openAreaRequest
     * @return
     */
    Boolean batchUpdate(String userId, OpenAreaRequest openAreaRequest);


    PageInfo<OpenAreaVO> queryKeyOpenAreaList(Integer pageSize, Integer pageNumber);




    /**
     * 查询可申请区域 可预约区域
     * @return
     */
    OpenProvinceVO getOpenProvince();


}
