using System.Collections.Generic;
using System.Threading.Tasks;
using ASHermed.SinoInterface.Api.ContractModel.App.Model;
using ASHermed.SinoInterface.Api.ContractModel.Quest;
using ASHermed.SinoInterface.ContractModel;

namespace ASHermed.SinoInterface.Api.IService.Quest
{
    public interface IQuestService
    {
        Task<BaseResponse<bool>> CreateQuestInfo(QuestInfo questInfo);

        Task<QuestInfo> GetQuestInfoRelease(int questInfoId, int languege, decimal version, string pid);
        Task<int> QuestAnswer(QuestAnswer questAnswer, bool isToken);
        Task<bool> EditQuestAnswer(QuestAnswer questAnswer);
        Task<BaseResponse<List<QuestPat>>> GetQuestPat(string phone);
        //Task<BaseResponse<QuestAnswer>> EchoAnswer(int infoId, int patId = 0);
        Task<BaseResponse<QuestAnswer>> EchoAnswerFor3(int patId);
        Task<BaseResponse<QuestAnswer>> EchoAnswerFor3Count(int patId);
        Task<BaseResponse<QuestAnswer>> EchoAnswer(int infoId, string pid = "", int patId = 0);
        Task<object> EchoAnswerForId(int id);
        Task<int> Synchronization(int infoId);
        Task<int> InsertCate(QuestInfo questInfo);
        Task<int> InsertOption(QuestInfo questInfo);
        Task<int> ChangeCateSort(int infoid);
    }
}
