package com.bcxin.survey.service.wechat;

import com.bcxin.survey.domain.survey.Survey_Info;
import com.bcxin.survey.dto.SurveyInfoDto;
import com.bcxin.survey.enums.report.QuestionType;
import com.bcxin.survey.enums.report.SurveyStep;

import java.util.List;

public interface SurveyInfoService {

	boolean saveOrUpdate(Survey_Info surveyInfo);
	
	boolean delete(Survey_Info surveyInfo);
	
	Survey_Info findSurveyInfoByOid(long oid);
	
	List<Survey_Info> findSurveyInfoListByQuestionnaireId(long questionnaireId);
	List<SurveyInfoDto> findSurveyInfoDtoListByQuestionnaireId(long questionnaireId);

	List<Survey_Info> findSurveyInfoListByStep(SurveyStep surveyStep);

	List<Survey_Info> findSurveyInfoListByTag(String tag);
	
	List<Survey_Info> getSurveyInfoFormCMSForFix(SurveyStep surveyStep,String activityType,String addressType);

	Survey_Info findSurveyInfoByaid(String aid, long questionnaireId);
	
	Survey_Info findSurveyInfoByaidAndQuestionType(String aid, long questionnaireId,QuestionType questionType);

	List<Survey_Info> findSurveyInfoFromCMSByTags(String tags);

	Survey_Info findSurveyInfoByaidFormCMS(String aid);

	List<Survey_Info> findNextSurveyInfoListByQuestionnaireId(long questionnaireId);

	Survey_Info findSurveyInfoByquestionnaireIdAndQuestion(long questionnaireId, String question);

	List<Survey_Info> findRectificationSurveyInfosByQuestionnaireId(long questionnaireId);

	List<Survey_Info> findSurveyInfosByQuestionTypeAndQuestionnaireId(QuestionType questionType, long questionnaireId);
}