package com.ssj.service.weixin.zuoyb.service;

import com.ssj.bean.sys.homework.domain.HomeworkPicture;
import com.ssj.bean.weixin.zyb.domain.ZuoybStudentWorkImg;
import com.ssj.framework.core.common.service.BaseService;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

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

/** 
 * @author  ZhangCaibao 
 * @version 2017年9月14日 下午3:04:49 
 * 类说明 
 */
public interface ZuoybStudentWorkImgService extends BaseService<ZuoybStudentWorkImg, String>{
	/**
	 * 
	* @param imgages_localId
	* @param imgages_serverId
	* @param imgids  需要删除的图片
	* @param workId   作业ID
	* 创建人：ZhangCaibao 
	* 2017年9月14日 下午3:08:17 
	* @void
	 */
	public void saveWorkImg(String[] imgages_localId,String[] imgages_serverId ,String imgids,String workId);
	
	public void saveWorkImg(List<ZuoybStudentWorkImg> list ,String imgids,String workId);
	/**
	 * 保存知识点对应的图片
	* @param list
	* @param details
	* @param workId
	* 创建人：ZhangCaibao 
	* 2017年11月6日 下午2:58:16 
	* @void
	 */
	public void saveWorkHowDetailsImg(List<ZuoybStudentWorkImg> list ,String detailsId,String workId);
	/**
	 * Api通过base64保存图片
	* @param list
	* @param detailsId
	* @param workId
	* 创建人：ZhangCaibao 
	* 2018年1月24日 下午3:24:11 
	* @void
	 */
	public void saveWorkHowDetailsImgaes(List<ZuoybStudentWorkImg> list ,String detailsId,String workId)throws Exception;
	/**
	 * 删除关联的图片
	* @param objectId
	* 创建人：ZhangCaibao 
	* 2017年11月1日 下午3:58:45 
	* @void
	 */
	public void deleteByObjectId(String objectId);
	
	/**
	 * 根据推送ID 查询所有的图片
	* @param pushId
	* @return
	* 创建人：ZhangCaibao 
	* 2017年11月6日 下午5:08:22 
	* @List<ZuoybStudentWorkImg>
	 */
	public List<ZuoybStudentWorkImg> getObjectList(String pushId);

	/**
	 * @param objectIds
	 * @return
	
	 * 方法说明:查询错题总数
	
	 * 创立日期:2018年5月16日 下午4:54:29
	 * 创建人:yangcan
	
	 */
	public Long countByObjectIdIn(List<String> objectIds);

	/**
	 * 查询错题数
	 * @param objectIds
	 * @return
	 */
	int countImgByObjectIdIn(List<String> objectIds);

	/**
	 *	保存作业批改时每张错题图片信息
	 * @param data
	 * @return
	 */
	public List<String> saveCorrectResult (String data, String zuoybWorkId, HomeworkPicture p);

	/**
	 * 保存图片信息
	 * @param list
	 * @param zuoybWorkId
	 * @param p
	 */
	public void saveImgData(List<Map<String, Object>> list, String zuoybWorkId, HomeworkPicture p);

	/**
	 * 查询错题
	 * @param studentWorkId
	 * @return
	 */
	List<String> findWrongQuestion (String studentWorkId);

	/**
	 * 查询错题本错题信息
	 * @param vipId 学生
	 * @param subject 科目
	 * @param isCorrect 订正否
	 * @param pageable 分页实体
	 * @return
	 */
	Page<Map<String, Object>> findWrongTopicBook (String vipId, String subject, boolean isCorrect, Pageable pageable);
}
