package org.jeecg.modules.apiService;

import org.jeecg.common.api.vo.Result;
import org.jeecg.modules.apiBean.PageBean;
import org.jeecg.modules.hanHaiMember.entity.HanHaiMember;
import org.jeecg.modules.travelAddress.entity.TravelAddress;
import org.jeecg.modules.travelAdvance.entity.TravelAdvance;
import org.jeecg.modules.travelCollection.entity.TravelCollection;
import org.jeecg.modules.travelOrder.entity.TravelOrder;
import org.jeecg.modules.travelShopcar.entity.TravelShopcar;
import org.jeecg.modules.travelTime.entity.TravelTime;
import org.jeecg.modules.travelVolunteer.entity.TravelVolunteer;
import org.jeecg.modules.travelWaresOrder.entity.TravelWaresOrder;

public interface IndexApiService {
    //获取小程序任一文章或服务

    //获取banner图列表
    public Result<?> queryBannerList(String bannerCategoryId);

    //获取视频列表
    public Result<?> queryVideoList(PageBean pageBean);

    //根据id给视频点赞
    public Result<?> addThumpup(String videoId);

    //获取文章列表-申遗历程/非遗体验
    public Result<?> queryArticleList(PageBean pageBean);

    //根据分类获取文章列表
    public Result<?> queryArticleListByType(String articleType, PageBean pageBean);

    //根据标题模糊查询文章
    public Result<?> queryArticleListByTitle(String articleTitile, PageBean pageBean);

    //根据id获取文章详情
    public Result<?> queryArticleById(String articleId);

    //获取景区列表
    public Result<?> queryAreaList(PageBean pageBean);

    //根据id获取景区详情
    public Result<?> queryAreaListById(String areaId);

    //根据景区id获取该景区下的地点列表-景点/厕所/美食店铺/民宿
    public Result<?> querySpotList(String areaId, String categoryId, PageBean pageBean);

    //根据角色类型获取角色信息列表-讲解员/达人/摄影师
    public Result<?> queryRoleInfoList(String roleType, String level, String spot, PageBean pageBean);

    //根据角色id获取角色信息详情
    public Result<?> queryRoleInfoById(String roleInfoId);

    //根据角色id获取视频列表
    public Result<?> queryVedioById(String roleInfoId, PageBean pageBean);

    //获取视遗产路径/我要研学列表
    public Result<?> queryAmusementList(String amusementType, String isPay, PageBean pageBean);

    //根据id获取视遗产路径/我要研学详情
    public Result<?> queryAmusementById(String amusementId);

    //非遗体验列表
    public Result<?> queryExperienceList(PageBean pageBean);

    //非遗体验详情
    public Result<?> queryExperienceById(String experienceId);

    //我的收藏列表
    public Result<?> queryCollectionList(String token, String collectionType, PageBean pageBean);

    //添加收藏
    public Result<?> addCollection(String token, TravelCollection travelCollection);

    //取消收藏
    public Result<?> deleteCollection(String token, String collectionType, String collectonId);

    //查询地址
    public Result<?> queryAddress(String token, TravelAddress travelAddress, PageBean pageBean);

    //新增地址
    public Result<?> addAddress(String token, TravelAddress travelAddress);

    //删除地址
    public Result<?> deleteAddress(String token, String addressId);

    //修改地址
    public Result<?> updateAddress(String token, TravelAddress travelAddress);

    //修改默认地址
    public Result<?> updateDefaultAddress(String token, String addressId);

    //预约时段表
    public Result<?> queryOrderTime(String timeType);

    //查询预约订单列表
    public Result<?> queryOrderList(String token, String orderType, PageBean pageBean);

    //创建预约订单
    Result<?> addOrder(String token, TravelOrder travelOrder);

    //查询文创好物订单列表
    public Result<?> queryWaresOrderList(String token, PageBean pageBean);

    //创建创好物订单
    public Result<?> addWaresOrder(String token, TravelWaresOrder travelWaresOrder);

    //获取文创好物列表
    public Result<?> queryWaresList(PageBean pageBean);

    //根据Id获取文创好物详情
    public Result<?> queryWaresById(String waresId);

    //获取购物车列表
    public Result<?> queryShopcarList(String token, PageBean pageBean);

    //添加购物车
    public Result<?> addShopcar(String token, TravelShopcar travelShopcar);

    //取消购物车
    public Result<?> deleteShopcar(String token, String shopcarId);

    //修改购物车信息
    public Result<?> updateShopcar(String token, TravelShopcar shopcar);

    //获取用户个人信息
    public Result<?> queryHanHaiMemberById(String token);

    //获取用户个人信息
    public Result<?> updateHanHaiMemberById(String token, HanHaiMember hanHaiMember);

    //语音播放
    public Result<?> textToAudio(String text);

    //文创好物-待补充

    //瓷都美食-链接美团

    //精品民宿-链接高德地图

    //无忧租车-链接滴滴打车

    //添加建议
    public Result<?> addAdvice(TravelAdvance travelAdvance);

    /*************************我的***********************************/
    //添加志愿者
    public Result<?> addVolunteer(TravelVolunteer travelVolunteer);

}
