package com.ssj.framework.files.service;

import com.ssj.bean.common.files.domain.FileInfo;
import com.ssj.framework.core.common.service.BaseService;
import org.springframework.web.multipart.MultipartFile;

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

public interface FileInfoService extends BaseService<FileInfo, String> {
	

	 /**
	  * 上传图片
	  * @param files
	  * @return
	  */
	 public List<FileInfo> uploadFilePicture(String userId, Map<String, MultipartFile> files)throws Exception;

	/**
	 * 上传文件
	 * @param userId
	 * @param files
	 * @param filePath
	 * @return
	 * @throws Exception
	 */
	 List<FileInfo> uploadFile(String userId, Map<String, MultipartFile> files, String filePath)throws Exception;

	 public List<FileInfo> uploadFilePicture(String userId, List<MultipartFile> files);
	  public List<FileInfo> uploadFilePicturePd(String userId, List<MultipartFile> files);

	 /**
	  * 保存图片
	  * @param userId
	  * @param picPath
	  * @return
	  */
	  public FileInfo saveFileInfo(String userId, String picPath, String fileName);


	    /**
	     * 批量保存图片
	     * @param userId
	     * @param picPaths
	     * @return
	     */
	    public List<FileInfo> saveFilePicture(String userId, String[] picPaths, String[] fileNames);



	/**
	 * @param files
	 * @param derver

	 * 方法说明:上传小贝儿日志文件

	 * 创立日期:2018年5月9日 上午10:37:45
	 * 创建人:yangcan

	 */
	public void upConchFileLog(List<MultipartFile> files, String derver) throws Exception;
	
	public List<FileInfo> findFileInfoByDate(String date);
	
	public void deleteByFilePath(String filePath);

    /**
     * 更新最近三个月文件fileCode
     */
	public void updateFileCode(String fileCode,int star,int end)throws  Exception;

	/**
	 * 判断文件 fileCode是否存在，存在则不上传
	 * @param filePath
	 * @return
	 */
	public boolean  fileIsExists(String filePath,String userId);

	/**
	 * 前端日志上传公共接口异常
	 * @param files
	 * @param mobileOS
	 * @param platformType
	 * @throws Exception
	 */
	public void upExceptionLog(List<MultipartFile> files, String mobileOS, int platformType) throws Exception;
}
