package com.tzld.piaoquan.growth.common.service;

import com.tzld.piaoquan.growth.common.common.base.CommonResponse;
import com.tzld.piaoquan.growth.common.model.bo.VideoDetail;
import com.tzld.piaoquan.growth.common.model.po.MessageAttachment;
import com.tzld.piaoquan.growth.common.model.po.Staff;
import com.tzld.piaoquan.growth.common.model.vo.GuaranteedParam;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;
import java.util.Map;
import java.util.Set;

public interface MessageAttachmentService {

    List<Long> addMessageAttachment(List<MessageAttachment> messageAttachmentList, Long createTime);

    List<MessageAttachment> getMessageAttachment(List<Long> attachmentIds);

    CommonResponse<Void> createGuaranteedMiniProgram(GuaranteedParam guaranteedParam);

    GuaranteedParam getGuaranteedVideo(String date);

    Map<Long, VideoDetail> getVideoDetail(Set<Long> videoIdList);

    String getPicMediaId(String cover, Long corpId, Long miniprogramVideoId);

    String getPage(String putScene, String channel, Staff staff, Long videoId, String typeOne, String typeTwo, String typeThree, String experimentId);

    String getPageNoCache(String path, String putScene, String channel, Staff staff, Long videoId, String typeOne, String typeTwo, String typeThree, String experimentId);

    String getPage(String channel, String carrierId, String scene, String putTypeOne, String putTypeTwo, String putTypeThree, Long videoId, String experimentId);

    CommonResponse<Long> createAttachment(Integer type, MultipartFile file, String url, String picUrl, String page, String title, String desc, String appId, Integer extType);
}
