package com.jsowell.thirdparty.ningxiajiaotou.service;

import com.jsowell.pile.dto.ningxiajiaotou.NXJTQueryOrdersInfoDTO;
import com.jsowell.pile.thirdparty.CommonParamsDTO;
import com.jsowell.pile.dto.ningxiajiaotou.NXJTQueryStationInfoDTO;

import java.io.UnsupportedEncodingException;
import java.util.Map;

/**
 * TODO
 *
 * @author Lemon
 * @Date 2023/11/12 9:33:03
 */
public interface NXJTService {

    /**
     * 生成令牌
     * @param dto
     * @return
     * @throws UnsupportedEncodingException
     */
    Map<String, String> generateToken(CommonParamsDTO dto) throws UnsupportedEncodingException;


    /**
     * 获取令牌
     * @param urlAddress
     * @param operatorId
     * @param operatorSecret
     * @return
     */
    String getToken(String urlAddress, String operatorId, String operatorSecret,
                    String dataSecretIv, String signSecret, String dataSecret);


    /**
     * 获取充电站信息
     * @param dto
     * @return
     */
    Map<String, String> queryStationsInfo(NXJTQueryStationInfoDTO dto);


    /**
     * 查询充电站中空闲桩数量
     * @param dto
     * @return
     */
    Map<String, String> queryFreePileNumber(NXJTQueryStationInfoDTO dto);


    /**
     * 查询某车辆的订单信息
     * @param dto
     * @return
     */
    Map<String, String> queryOrdersInfoByPlateNumber(NXJTQueryOrdersInfoDTO dto);

    /**
     * 查询指定时间内的订单信息
     * @param dto
     * @return
     */
    Map<String, String> queryOrdersInfo(NXJTQueryOrdersInfoDTO dto);
}
